mail.log
我在我的文件中遇到了以下情况:
May 20 21:50:46 degas postfix/smtpd[1596]: NOQUEUE: reject: RCPT from unknown[109.170.250.177]: 450 4.7.1 Client host rejected: cannot find your hostname, [109.170.250.177]; from=<***> to=<***> proto=ESMTP helo=<jamnet.jamrec.jamjobs.co.uk>
在 Postfix 配置中reject_unknown_client_hostname
设置smtpd_recipient_restrictions
我觉得有点困惑的是,它dig -x 109.170.250.177
返回了一个有效的答案:
;; QUESTION SECTION:
;177.250.170.109.in-addr.arpa. IN PTR
;; ANSWER SECTION:
177.250.170.109.in-addr.arpa. 67434 IN PTR mail.jamjobs.co.uk.
根据 Postfix 文档,此配置选项的作用如下
当 1) 客户端 IP 地址->名称映射失败、2) 名称->地址映射失败或 3) 名称->地址映射与客户端 IP 地址不匹配时拒绝请求。
在这种情况下,条件 1) 得到满足,但条件 3) 似乎导致了失败。
我可以改为 来reject_unknown_reverse_client_hostname
解决这个问题。
您是否认为我当前的设置太“强”或太“严格”?我是否应该通常期望 SMTPD 客户端公布的主机名可能与 IP 地址查找不同?此配置是否有助于防止垃圾邮件。目前它似乎会导致太多误报。
答案1
您对错误的解释是错误的:
% host jamnet.jamrec.jamjobs.co.uk
Host jamnet.jamrec.jamjobs.co.uk not found: 3(NXDOMAIN)
这就是您的问题 - HELO/EHLO 识别的是主机名,而不是 IP。