Postfix 反向 DNS 查找:450 4.7.1 客户端主机被拒绝

Postfix 反向 DNS 查找:450 4.7.1 客户端主机被拒绝

Postfix 似乎一直在拒绝来自少数服务器的邮件,尽管这些域的 PTR 查找成功。请参阅下面的日志。我不知道该怎么做才能解决这个问题。我确信问题不在于发送服务器,因为它们在发送到其他域时没有错误。

Oct 26 09:08:32 mail postfix/smtpd[16158]: NOQUEUE: reject: RCPT from  
unknown[XX.XX.XX.XX]: 450 4.7.1 Client host rejected: cannot find your hostname, 
[XX.XX.XX.XX]; from=<[email protected]> to=<[email protected]> proto=ESMTP 
helo=<somedomain.com>

[root@mail log]# dig -x XX.XX.XX.XX

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.23.rc1.el6_5.1 <<>> -x XX.XX.XX.XX
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26837
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 6, ADDITIONAL: 6

;; QUESTION SECTION:
;XX.XX.XX.XX.in-addr.arpa.  IN  PTR

;; ANSWER SECTION:
XX.XX.XX.XX.in-addr.arpa. 7813  IN  PTR somedomain.com.

;; Query time: 417 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Sun Oct 26 09:24:25 2014
;; MSG SIZE  rcvd: 66

答案1

由于您对数据进行了匿名化,因此无法 100% 回答,但 Postfix 正在寻找要匹配的 PTR 和 A 记录,以及邮件服务器声称的主机名,从您混淆的日志消息中的 HELO 命令来看,该主机名似乎是“somedomain.com”。

这些由以下人员控制:

reject_unknown_sender_domain
reject_unknown_client_hostname
reject_invalid_helo_hostname

Postfix 配置参数http://www.postfix.org/postconf.5.html

答案2

我知道这是一个老话题,但我想在答案中添加一些更多的内容。

事实上,发件人的域名存在问题。正如 @milli 指出的那样,PTR 和 A 记录应该匹配 - 但事实并非如此。

如果 postfix 配置了 rejection_unknown_sender_domain,postfix 将执行以下检查...

1)从 DNS 检索 PTR 记录 - 如果没有 PTR 记录,则拒绝该电子邮件

2)从 PTR 中的域的 DNS 中检索 A 记录 - 如果 A 记录中的 IP 与连接的 MX 的 IP 不匹配,则拒绝该电子邮件。

例如,MX 从 IP 74.125.195.27 连接

$ host 74.125.195.27
27.195.125.74.in-addr.arpa domain name pointer wj-in-f27.1e100.net.
$ dig a wj-in-f27.1e100.net. +short
216.239.32.27
66.102.12.27
74.125.195.27

在这种情况下,PTR 记录中来自域的 A 记录包含与所连接主机相同的 IP 地址。此电子邮件不会被拒绝。

不过,大多数情况下的“问题”如下:

$ host 216.117.130.109
109.130.117.216.in-addr.arpa domain name pointer jalequity.com.
$ dig a jalequity.com. +short
104.239.175.211

PTR 记录中域的 A 记录与所连接主机的 A 记录不匹配 - 此电子邮件将被拒绝,并显示“客户端主机被拒绝:找不到您的主机名”

导致这种情况的最常见错误是将实际域名(本例中为“jalequity.com”)放在 PTR 记录中,而不是子域名。要解决此问题,发件人应将其 PTR 记录修改为 mail.jalequity.com 之类的内容,然后为 mail.jalequity.com 添加一条 A 记录,IP 地址为 216.117.130.109。从该服务器发送的任何其他电子邮件都将被接受。

最好的解决方法是让发送者更正他们的 DNS 记录。

另一种解决方法是将后缀限制从“reject_unknown_sender_domain”放宽为“reject_unknown_reverse_client_hostname”。但此操作会产生一些后果 - 主要是大多数垃圾邮件发送者都有 PTR 记录(它只是与 A 记录不匹配),因此放宽后缀限制将确保您不会错过重要的电子邮件,但它也将确保您的垃圾邮件过滤器持续工作!

相关内容