`
iunknown
  • 浏览: 410043 次
社区版块
存档分类
最新评论

SPSmtpGate: SMTP 反垃圾邮件网关

阅读更多
SPSmtpGate 是一个反垃圾邮件网关,支持 Sendmail 8 的 Milter 协议,采用透明 smtp proxy 的模式。Milter 协议由 Sendmail 公司提出,在 Sendmail 和 Postfix 中都有实现。目前开源的 Milter 模块非常丰富,如果搭配的好,这些 milter 可以有效地拦截垃圾邮件。借助于 SPSmtpGate ,SendMail/Postfix 之外的其他 MTA 也可以方便地利用这些 Milter 模块。

http://code.google.com/p/spsmtpgate/
http://spsmtpgate.googlecode.com/files/spsmtpgate-0.1.src.tar.gz

SPSmtpGate 部署在 Internet 和本地 MTA 之间。系统结构如下图所示。


                        ---------------   
                        |             |
                        |   Milter    |
                        |             |
                        ---------------   
                              /|\
                               |
                               |
  -------------         ---------------          -------------
  |           |         |             |          |           |
  | Internet  |  -----> | SPSmtpGate  |  ----->  | Local MTA |
  |           |         |             |          |           |
  -------------         ---------------          -------------



由于采用了透明 proxy 的模式,对于原有的系统影响非常小,只需要修改少量的配置。
如果 SPSmtpGate 和 Local MTA 部署在同一台机器,那么修改 Local MTA 的配置,使得它使用 25 之外的端口,比如 2025 端口;然后由 SPSmtpGate 来接管 25 端口,同时修改 SPSmtpGate 的配置文件,把 Local MTA 作为 backend 。

SPSmtpGate 使用的配置文件
[Server]                  ; spsmtpgate 的一些控制参数
MaxConnections = 1024     ; 最大并发连接数
SocketTimeout = 600       ; 和 internet 上其他主机通信的超时时间
MaxThreads = 128          ; 最多使用的线程数
MaxReqQueueSize = 128     ; 最大的队列长度

[Backend]                    ; 后端 MTA 的相关信息
ConnectTimeout = 5           ; 连接超时时间
ConnectRetry = 3             ; 连接重试次数
SocketTimeout = 10           ; socket 通信超时时间
ServerCount = 1              ; 有多少台后端 MTA 可用
Server0 = 127.0.0.1:2025 10  ; 第一台可用的后端 MTA 

[MailFilter]                 ; milter 模块的相关信息
Filter0 = "S=inet:1111@127.0.0.1, T=C:5s;S:10s;R:10s;E:1m"


通常需要修改 [Backend] 和 [MailFilter] 这两个配置节。
1)首先修改 Server0 这里的内容,指向具体的 MTA 主机和端口
2)其次修改 MailFilter 的内容,指向具体的 Milter 模块。Milter 的配置内容采用 Sendmail 的格式。

S=inet:1111@127.0.0.1, F=T, T=C:5s;S:10s;R:10s;E:1m

S= 表示 Milter 的连接端口,可以使用 local:/var/run/f1.sock 或者 inet:1111@127.0.0.1 的方式。

F= 表示应用以下哪个标志:
R 	如果过滤器不可用,那么拒绝连接。
T 	如果过滤器不可用,那么使连接临时失效。

通过为 T= 指定一个值,可以覆盖缺省超时值。等式 T= 使用以下字段:

C 	连接到过滤器的超时值
S 	将信息从 MTA 发送到过滤器的超时值。
R 	从过滤器读取应答的超时值。
E 	向过滤器发送消息结束通知与等待最终确认之间的总超时值。
如以上示例中所示,每个超时之间的分隔符是分号(;),每个等式之间的分隔符是逗号(,)。
缺省的超时值如下:

T=C:0m;S:10s;R:10s;E:5m

其中 s 代表秒,m 代表分钟。

分享到:
评论

相关推荐

    MailCleaner:反垃圾邮件SMTP网关-开源

    [反垃圾邮件] MailCleaner是一个反垃圾邮件/防病毒过滤器SMTP网关,具有用户和管理Web界面,隔离,多域,多模板,多语言。 使用贝叶斯,RBL,Spamassassin,MailScanner,ClamAV。 基于Debian。 企业准备就绪。 ...

    垃圾邮件网关选型主要指标

    1. 技术先进性:优秀的反垃圾邮件网关应具备先进的反垃圾邮件技术,如内容过滤、经验规则、协议分析以及智能混合型反垃圾技术。 2. 内容过滤与经验规则:这是基础且成熟的反垃圾邮件技术,包括关键字过滤、贝叶斯...

    RadicalSpam:开源反垃圾邮件和反病毒网关-开源

    RadicalSpam是在GPL v2下分发的免费开源软件包,包括Postfix,SpamAssassin Amavisd-new,Clamav,Razor,DCC,... 提供安全的SMTP中继,可以在Linux和docker环境中使用。 详细信息:http://www.radical-spam.org

    lotus domino 反垃圾邮件设置

    - **个人反垃圾邮件规则**: 用户可以在他们的Lotus Notes客户端中设置个人的垃圾邮件过滤规则,例如,将特定发件人或主题的邮件自动移到垃圾邮件文件夹。 - **Junk Email(垃圾邮件)文件夹: ** Lotus Notes提供了...

    在Ruby中利用Net::SMTP类发送电子邮件的教程

    这个类提供了与SMTP(Simple Mail Transfer Protocol)服务器交互的功能,允许开发者创建和发送邮件。以下是使用`Net::SMTP`发送电子邮件的基本步骤和关键知识点: 1. **初始化SMTP连接**: 使用`Net::SMTP.new`...

    Exchange反垃圾邮件实训.pdf

    4.1.2 反垃圾邮件应用在SMTP虚拟服务器上:SMTP是电子邮件传输的主要协议,反垃圾邮件策略通常会集成到SMTP服务器中,以在邮件进入系统之前进行初步筛选。 4.1.4 启用Exchange 2003的邮件跟踪功能:邮件跟踪可以...

    exchange 邮件服务器反垃圾配置教程

    ### Exchange邮件服务器反垃圾配置详解 #### 一、引言 随着互联网的发展,电子邮件成为企业和个人之间交流的重要工具之一。然而,垃圾邮件的存在严重影响了邮箱的正常使用,不仅浪费了宝贵的网络资源,还增加了...

    反垃圾邮件系统实施项目解决方案.doc

    【反垃圾邮件系统实施项目解决方案】 随着电子邮件在企业通信中的广泛应用,垃圾邮件问题日益严重,对企业的运营效率和信息安全构成了巨大挑战。据2005年的数据,垃圾邮件已占据全球电子邮件总量的69%,数量呈指数...

    基于SMTP的邮件收发系统

    5. 邮件验证:防止垃圾邮件,SMTP服务器可能会使用反垃圾邮件技术,如SPF(Sender Policy Framework)、DKIM(DomainKeys Identified Mail)和DMARC(Domain-based Message Authentication, Reporting & Conformance...

    高性能smtp协议网关

    3. **反垃圾邮件机制**:SMTP网关需要具备反垃圾邮件功能,例如SPF(Sender Policy Framework)、DKIM(DomainKeys Identified Mail)、DMARC(Domain-based Message Authentication, Reporting & Conformance)等...

    基础邮件系统的安装(基于postfix)及反垃圾设置

    总结来说,构建一个基础的邮件系统并实现反垃圾邮件功能,需要深入理解邮件协议、服务器软件的配置以及网络安全策略。Postfix的灵活性和强大的反垃圾邮件特性使其成为许多组织的理想选择。正确配置这些设置可以有效...

    Domino的SMTP高级配置,防范垃圾邮件

    - **反转发设置**:对于传输到外部Internet域的邮件,应设置适当的反转发规则,以减少垃圾邮件的流入。这可能包括设置黑名单、白名单等策略。 #### 结束语 通过上述高级配置,IBM Lotus Domino 8服务器不仅可以更...

    Anti-Spam SMTP Proxy Server:反垃圾邮件SMTP代理服务器实现多个垃圾邮件过滤器-开源

    反垃圾邮件SMTP代理(ASSP)服务器项目旨在创建一个独立于开源平台的SMTP代理服务器,该服务器实现自动白名单,自学习的隐马尔可夫模型和/或贝叶斯,灰名单,DNSBL,DNSBL,URIBL,SPF ,SRS,反向散射,病毒扫描,...

    ASSP_2.6.3_20002_install_win32(反垃圾邮件SMTP代理服务器).zip

    反垃圾邮件SMTP代理(ASSP)服务器项目旨在创建一个独立于开源平台的SMTP代理服务器,该服务器实现自动白名单,自学习的隐马尔可夫模型和/或贝叶斯,灰名单,DNSBL,DNSBL,URIBL,SPF ,SRS,反向散射,病毒扫描,...

    基于ASP的反垃圾邮件管理系统的设计(源代码+论文)

    2. **邮件协议理解**:反垃圾邮件系统需要理解和操作SMTP(Simple Mail Transfer Protocol)、POP3(Post Office Protocol version 3)等邮件协议,以便于接收、发送和过滤邮件。 3. **垃圾邮件识别算法**:常见的...

    Email邮件发送退信分析大全

    一般情况下,当您发送的邮件无法正常到达收件人时,mail 邮件系统将会自动给您发一封警告信,这封退信通知里面包含了无法正常发送到对方邮件地址的原因,所以绝大多数情况下可以通过退信通知来找出发信失败的原因及...

    如何搭建Linux邮件网关与邮件系统

    这可能包括设置SPF、DKIM、DMARC等反垃圾邮件策略。 2. 配置DNS解析: 邮件网关需要正确解析邮件服务器的域名。在ServerA上,我们已经编辑了`/etc/named.conf`并添加了对`wllhc.org`和`thiz.net`的区域定义。接...

Global site tag (gtag.js) - Google Analytics