postfix

bk2898 34 0

如何配置Postfix防御垃圾邮件

postfix是一个非常优秀的mta,mta的反垃圾邮件功能,实际上就是在mta处理过程中对会话进行过滤。这种过滤不但过滤了发往自身的垃圾邮件,而且还防止了自身被恶意利用发送垃圾邮件。postfix实现了目前所有主要的mta过滤技术。   mta过滤分为两类:邮件数据发送前过滤和邮件数据发送后过滤。   数据前过滤是指在smtp会话中,data指令发送前进行的过滤。在这个阶段,有四种不同子阶段的过滤:smtp连接时过滤、 helo/ehlo指令过滤、mail from指令过滤和rcpt to指令过滤。根据这四个子阶段接收到的信息的不同,它们也分别称作smtp客户端限制、helo/ehlo主机名限制、发送者地址限制和接收者地址限制。   过滤默认是在rcpt to指令后生效的,这是因为一些windows上的邮件客户端不处理在rcpt to指令前的过滤动作。可以通过将smtpd_delay_reject设置为no来使过滤动作立刻生效。这个参数还影响了在不同的指令上可以使用的过滤规则参数。   这四个子阶段的过滤是分别通过四个配置语句来指定过滤规则的。它们都接收一系列的规则参数列表,参数间可以用空格或逗号分隔开。在默认状态下 smtpd_delay_reject的值是yes,它们可以接受所有支持的规则,不过需在rcpt to指令后才能全部生效;如果把smtpd_delay_reject设置为no,它们只可以接受五个公共的规则参数、之前子阶段的过滤规则参数和该子阶段的规则参数。   它们接受的公共的规则参数如下:   permit   允许该连接进行。该规则通常置于规则列表的最后面使规则更清晰。   defer   通知客户端现在不能继续会话,稍后再进行smtp连接请求。这常用于服务器需要进行一些dns检查,但是(由于dns查询超时)没有及时获得结果时,通知客户端稍后再进行连接。该规则通常置于规则列表的最后面使规则更清晰。   reject   拒绝该连接请求。在这个阶段就断开了连接,有效的节约了垃圾邮件造成的带宽和处理能力的浪费。该规则通常置于规则列表的最后面使规则更清晰。   拒绝动作默认不会在匹配了拒绝规则后就立刻断开连接,而是在rcpt to指令处理完之后再断开的,这是由于一些windows上有缺陷的邮件程序不处理在rcpt to指令前的发回的拒绝状态码。可以通过smtpd_delay_reject设置为no来立刻发送拒绝状态码断开连接。   reject_code指定了拒绝的返回状态码(默认是554)。   warn_if_reject   改变其后规则的拒绝动作为警告,即如果其后存在满足拒绝的条件,并不实际拒绝,而是发出一条警告信息(reject_warning)到日志文件中(通常是/var/log/maillog)。它常用于在实际运行的邮件服务器上测试邮件过滤规则。   reject_unauth_pipelining   拒绝在postfix支持指令流水线前发送smtp指令流水线的客户端连接。指令流水线是一些邮件客户端为了快速发送邮件所采用的技术。

Postfix服务的重启的命令为()

Postfix服务的重启的命令为()

正确答案:servicepostfixrestart;

删除 Postfix 邮件队列中的特定邮件

用一个命令组合即可删除 Postfix 邮件队列中的特定邮件。

例:

# mailq | awk '/bad_address@bad_domain/{print $1}' | awk -F! '{print $1}' | tr -d '*' | xargs -n 1 postsuper -d

其中bad_address@bad_domain这个字符串根据实际情况修改。注意:邮件地址必须为from的地址

这个命令用到了 awk,tr, xargs 这些命令,很有代表性,因此记录一下。

抱歉,评论功能暂时关闭!