![Postfix 因反向 DNS 查找失败而拒绝电子邮件,而手动查找工作正常](https://linux22.com/image/550001/Postfix%20%E5%9B%A0%E5%8F%8D%E5%90%91%20DNS%20%E6%9F%A5%E6%89%BE%E5%A4%B1%E8%B4%A5%E8%80%8C%E6%8B%92%E7%BB%9D%E7%94%B5%E5%AD%90%E9%82%AE%E4%BB%B6%EF%BC%8C%E8%80%8C%E6%89%8B%E5%8A%A8%E6%9F%A5%E6%89%BE%E5%B7%A5%E4%BD%9C%E6%AD%A3%E5%B8%B8.png)
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。