有时 ,我有一个问题,不一致地拒绝客户端邮件:
Sep 15 09:24:07 mail postfix/postscreen[16209]: NOQUEUE: reject: RCPT from [xxxx]:15037: 450 4.3.2 Service currently unavailable; from=<[email protected]>, to=<[email protected]>, proto=ESMTP, helo=<mail.external.com> Sep 16 07:41:01 mail postfix/postscreen[16209]: NOQUEUE: reject: RCPT from [xxxx]:13720: 450 4.3.2 Service currently unavailable; from=<[email protected]>, to=<[email protected]>, proto=ESMTP, helo=<mail.external.com> Sep 16 09:08:22 mail postfix/postscreen[16209]: NOQUEUE: reject: RCPT from [xxxx]:34719: 450 4.3.2 Service currently unavailable; from=<[email protected]>, to=<[email protected]>, proto=ESMTP, helo=<mail.external.com>
这是一个运行postfix 2.9.6-2的debian wheezy服务器。 在给定的时间看性能图,服务器和后缀都没有高负载,所以我怀疑它的拒绝。
有没有办法减less这个postscreen守护进程的负载,禁用或白名单的特定用户,以便他们可以“通过它”?
这些错误出现在您的日志中,因为您已启用POSTSCREEN_README中logging的深层协议testing 。 因为postscreen 不是代理服务器 ,所以当你第一次尝试延迟客户端连接时,它会变成灰色列表。 更多信息在这两个邮件列表线程中, 这一个和这一个 。
如果您不知道/了解深层协议testing中发生的情况,请不要启用它。 通过在main.cf更改这些参数禁用它
postscreen_bare_newline_enable = no postscreen_non_smtp_command_enable = no postscreen_pipelining_enable = no
如果要在将某个客户端join白名单时启用它,请参阅此页面中的参数postscreen_access_list 。 简而言之,在main.cf添加参数postscreen_access_list
postscreen_access_list = cidr:/etc/postfix/postscreen_access.cidr
然后在/etc/postfix/postscreen_access.cidr中定义acl
# Rules are evaluated in the order as specified. # Blacklist 192.168.* except 192.168.0.1. 192.168.0.1 permit 192.168.0.0/16 reject