我遇到了 Postfix 问题有时,不一致地拒绝客户邮件:
Sep 15 09:24:07 mail postfix/postscreen[16209]: NOQUEUE: reject: RCPT from [x.x.x.x]: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 [x.x.x.x]: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 [x.x.x.x]: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 服务器。查看给定时间的性能图表,服务器和 postfix 的负载都不高,所以我怀疑它是否因此被拒绝。
有没有办法减轻这个负担后筛选守护进程,禁用它或者将特定用户列入白名单,以便他们可以“通过它”?
答案1
您的日志中出现这些错误是因为您启用了深度协议测试记录在POSTSCREEN_README. 因为 postscreen不是代理,那么它就会变成灰名单当您在第一次尝试中推迟客户端连接时。 这两个邮件列表主题中提供了更多信息,这个和这个。
如果你不知道/不明白发生了什么深度协议测试,不要启用它。通过更改以下参数来禁用它
main.cf
postscreen_bare_newline_enable = no postscreen_non_smtp_command_enable = no postscreen_pipelining_enable = no
如果要在将某些客户端列入白名单时启用它,请查看参数postscreen_access_list在此页简而言之,
postscreen_access_list
在main.cf
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