postfix垃圾邮件过滤机制,有谁全部使用了

本文介绍了一种基于POSTFIX的垃圾邮件过滤配置方案,详细展示了如何通过设置smtpd_restriction_classes、smtpd_helo_required等参数来实现严格的邮件接收策略,确保服务器免受垃圾邮件的侵扰。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

POSTFIX有传说中最强的垃圾邮件过滤机制,有谁把这些机制全部利用起来了。
 
smtpd_restriction_classes 
             spamlover      
             spamhater
spamhater 
             reject_invalid_hostname
             reject_non_fqdn_hostname
             reject_unknown_sender_domain
             reject_rbl_client   nospam.example.com
spamlover  permit
smtd_helo_required  yes
smtpd_client_restrictions 
          check_client_access  hash:/ect/postfix/client_access
smtpd_helo_restrictions =
       reject_invalid_hostname
       check_helo_access hash:/etc/postfix/helo_access
smtpd_sender_restrictions =
       reject_non_fqdn_sender
       reject_unknown_sender_domain
       check_sender_access hash:/etc/postfix/sender_access
smtpd_recipient_restrictions = 
          permit_mynetworks
          reject_unauth_destination
          reject_non_fqdn_recipient
          reject_unknown_recipient_domain
smtpd_data_restrictions =
       reject_unauth_pipelining
header_checks = /etc/postfix/header_checks
body_checks = /etc/postfix/body_checks









本文转自 jxwpx 51CTO博客,原文链接:http://blog.51cto.com/jxwpx/238679,如需转载请自行联系原作者
一、数据前过滤   数据前过滤是指在smtp会话中,data指令发送前进行的过滤。在这个阶段,有四种不同子阶段的过滤:smtp连接时过滤、helo/ehlo指令过滤、mail from指令过滤和rcpt to指令过滤。根据这四个子阶段接收到的信息的不同,他们也分别称作smtp客户端限制、helo/ehlo主机名限制、发送者地址限制和接收者地址限制。   过滤默认是在rcpt to指令后生效的,这是因为一些windows上的邮件客户端不处理在rcpt to指令前的过滤动作。能通过将smtpd_delay_reject设置为no来使过滤动作即时生效。这个参数还影响了在不同的指令上能使用过滤规则参数。   1、过滤规则   这四个子阶段的过滤是分别通过四个设置语句来指定过滤规则的。他们都接收一系列的规则参数列表,参数间能用空格或逗号分隔开。在默认状态下smtpd_delay_reject的值是yes,他们能接受所有支持的规则,不过需在rcpt to指令后才能全部生效;如果把smtpd_delay_reject设置为no,他们只能接受五个公共的规则参数、之前子阶段的过滤规则参数和该子阶段的规则参数。   他们接受的公共的规则参数如下: o permit 允许该连接进行。该规则通常置于规则列表的最后面使规则更清晰。 o defer 通知客户端目前不能继续会话,稍后再进行smtp连接请求。这常用于服务器需要进行一些dns检查,不过(由于dns查询超时)没有及时获得结果时,通知客户端稍后再进行连接。该规则通常置于规则列表的最后面使规则更清晰。 o reject 拒绝该连接请求。在这个阶段就断开了连接,有效的节约了垃圾邮件造成的带宽和处理能力的浪费。该规则通常置于规则列表的最后面使规则更清晰。 拒绝动作默认不会在匹配了拒绝规则后就即时断开连接,而是在rcpt to指令处理完之后再断开的,这是由于一些windows上有缺陷的邮件程式不处理在rcpt to指令前的发回的拒绝状态码。能通过smtpd_delay_reject设置为no来即时发送拒绝状态码断开连接。 reject_code指定了拒绝的返回状态码(默认是554)。 o warn_if_reject 改动其后规则的拒绝动作为警告,即如果其后存在满足拒绝的条件,并不实际拒绝,而是发出一条警告信息(reject_warning)到日志文件中(通常是/var/log/maillog)。他常用于在实际运行的邮件服务器上测试邮件过滤规则。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值