
我正在運行帶有 Postfix 2.9.6 和 Spamassassin 3.3.2 的 Debian 7.9 伺服器。
Spamassassin 執行的標準檢查之一是檢查 rDNS 記錄。我假設它Received: from ...
從 Postfix 傳遞的訊息的標頭中獲取該資訊。
現在,Postfix 經常無法解析 IP 位址的主機名,這不必要地給出了比應有的更差的分數,因為幾乎所有時候,主機名稱實際上都存在。如果我手動檢查這些訊息,我可以看到提到的標頭經常顯示Received: from example.com (unknown [1.2.3.4]) by ...
while,同時如果我嘗試自己解析 IP 位址(在伺服器的 shell 中),它可以正常工作。
這裡有什麼問題呢?是否有一個可能過於激進的超時而沒有給它足夠的時間?如果是這樣,有沒有辦法調整這個超時時間?我的伺服器每分鐘沒有收到數千條訊息,所以再等幾秒鐘也沒什麼壞處。切換到 DNS over TCP 是否有助於解決此問題?如果是這樣,我該如何告訴 Postfix 使用 TCP 進行 DNS 查詢?
答案1
事實證明,我正在運行 Postfix 安裝,並將 chroot 設定為預設的「yes」。在我將其設為“否”後(因為我沒有在 chroot 中運行它),似乎解決了問題。
我還是不明白為什麼以前看起來沒有問題但現在卻可以了。
有問題的設定位於/etc/postfix/master.cf:
(來源)
# =============================================================
# service type private unpriv chroot wakeup maxproc command
# (yes) (yes) (yes) (never) (100)
# =============================================================
smtp inet n - n - - smtpd
# This had to be set to "n": ^