Spamassassin DKIM DNS 問題
這是我遇到問題的設置:
我的電腦有 IP 10.6.2.5。有一個 IP 為 10.6.2.4 的 DNS 伺服器 ns.isp6.lab(我可以訪問它)。
我的電腦安裝了 Postfix + Dovecot + SpamAssassin。我收到來自域 isp6.lab 的使用 DKIM 簽名的電子郵件。他們使用此域密鑰簽名:mail._domainkey.isp6.lab
當我這樣做時,
dig mail._domainkey.isp6.lab TXT
我會得到公共 RSA 密鑰的答案。問題是 Spammassassin 沒有找到它,這是收到的電子郵件的標題的一部分:
X-Spam-HAM-Report: * -1.0 ALL_TRUSTED Passed through trusted hosts only via SMTP * 0.1 DKIM_SIGNED Message has a DKIM or DK signature, not necessarily * valid * 0.0 T_DKIM_INVALID DKIM-Signature header exists but is not valid
所以我在 SpamAssassin 中啟動了調試日誌,這就是我發現的:
cat spamd.log | grep dkim Tue Oct 7 16:38:50 2014 [21673] dbg: dkim: performing public key lookup and signature verification Tue Oct 7 16:39:00 2014 [21673] dbg: dkim: DKIM, i=@isp6.lab, d=isp6.lab, s=mail, a=rsa-sha256, c=relaxed/simple, invalid, matches author domain Tue Oct 7 16:39:00 2014 [21673] dbg: dkim: signature verification result: INVALID (PUBLIC KEY: DNS QUERY TIMEOUT FOR MAIL._DOMAINKEY.ISP6.LAB)
我檢查了我的
/etc/resolv.conf
: domain isp6.lab search isp6.lab nameserver 10.6.2.4我現在正在尋找關於這個問題的幾個小時(它似乎沒有很好的文件記錄),我檢查了我是否擁有所有 CPAN 所需的模組等;我真的不知道我還能做什麼。
在此先感謝您的幫助。
編輯:也許可以在 NET::DNS 模組中做些什麼?我真的不明白所有這些模組是如何使用、配置和相互互動的。
也許您遇到了與 NET::DNS 和 spamassassin 相關的錯誤。它在此部落格和此SA 郵件列表中進行了解釋。摘自部落格
Net::DNS 0.76 版更改了在 Net::DNS::Resolver 對像中包含一組名稱伺服器的欄位名稱:它曾經是“名稱伺服器”,但現在分為兩個欄位:“名稱伺服器 4”和“名稱伺服器 6”。
Mail/SpamAssassin/DnsResolver.pm 依靠 Net::DNS::Resolver 對象的內部欄位名稱來獲取遞歸名稱伺服器的預設列表,因此 Net::DNS 中的更改打破了這一點。
解決方案:
檢查您的儲存庫,如果他們在較新版本中修復了該問題。如果沒有,您可以從此處手動應用更新檔