Domain-Name-System

為什麼後綴在 dig 找到主機時會顯示“Helo command denied: Host not found”?

  • July 21, 2018

Helo command rejected: Host not found;因此,我在 中看到以下錯誤/var/log/syslog,但是當我對相關主機進行正向​​和反向查找時,DNS 記錄似乎是合理的。有問題的郵件伺服器endor, 似乎可以正常接收郵件。

為什麼 Postfix 這麼說(還有第二個問題,有沒有我應該更改的設置來修復它?

為保護隱私而更改的電子郵件地址:

Jul 20 23:35:20 endor postfix/smtpd[1503]: NOQUEUE: reject: RCPT from
bdmrob01-2.metavante.com[206.71.18.21]: 450 4.7.1
<bdmrob02.metavante.com>: Helo command rejected: Host not found;
from=<bbankingonline@mybank.com>
to=<myemail@fqdn.org> proto=ESMTP
helo=<bdmrob02.metavante.com>

但 DNS 看起來不錯:

endor% dig bdmrob01-2.metavante.com

; <<>> DiG 9.11.3-1ubuntu1.1-Ubuntu <<>> bdmrob01-2.metavante.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 32487
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;bdmrob01-2.metavante.com.  IN  A

;; ANSWER SECTION:
bdmrob01-2.metavante.com. 600   IN  A   206.71.18.21

endor% dig -x 206.71.18.21

; <<>> DiG 9.11.3-1ubuntu1.1-Ubuntu <<>> -x 206.71.18.21
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40586
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;21.18.71.206.in-addr.arpa. IN  PTR

;; ANSWER SECTION:
21.18.71.206.in-addr.arpa. 600  IN  PTR bdmrob01-2.metavante.com.

我應該提到,main.cf 說:

smtpd_helo_restrictions = 
reject_non_fqdn_helo_hostname,reject_invalid_helo_hostname,reject_unknown_helo_hostname

答案一直盯著我們看。

Postfix 正在尋找主機問候它的A和記錄。或者,更準確地說,是主機**在其 HELO 消息中所說的主機。讓我們分解一下:PTR``HELO

Jul 20 23:35:20 endor postfix/smtpd[1503]: NOQUEUE: reject: RCPT from
bdmrob01-2.metavante.com[206.71.18.21]:

bdmrob01-2.metavante.com解析為 IP 地址的主機206.71.18.21與您的郵件伺服器建立 TCP 連接。

因此,您檢查了 IP 地址中的 A 記錄:

endor% dig bdmrob01-2.metavante.com
[...]
;; ANSWER SECTION:
bdmrob01-2.metavante.com. 600   IN  A   206.71.18.21

然後你檢查了它的 PTR 記錄:

endor% dig -x 206.71.18.21
;; ANSWER SECTION:
21.18.71.206.in-addr.arpa. 600  IN  PTR bdmrob01-2.metavante.com.

這一切看起來都不錯。所以有什麼問題?連接的主機肯定是由上面的主機名和 IP 地址標識的,但它並沒有說明它是誰。它說:

helo=<bdmrob02.metavante.com>

該主機有一條 A 記錄:

$ dig a bdmrob02.metavante.com
[...]
;; ANSWER SECTION:
bdmrob02.metavante.com. 0   IN  A   92.242.140.2

但是,它的IP地址沒有PTR記錄:

$ dig -x 92.242.140.2
[...]
;; ANSWER SECTION:
2.140.242.92.in-addr.arpa. 84155 IN PTR unallocated.barefruit.co.uk.

這是他們的問題。在此之前,您將不得不忍受它,或者更改您的後綴伺服器以不打擾HELO命令的正向和反向查找。

引用自:https://serverfault.com/questions/922935