Domain-Name-System

Spamassassin DKIM DNS 問題

  • October 8, 2014

這是我遇到問題的設置:

我的電腦有 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 中的更改打破了這一點。

解決方案:

檢查您的儲存庫,如果他們在較新版本中修復了該問題。如果沒有,您可以從此處手動應用更新檔

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