DKIM 域選擇
我發送具有不同域
From
和Return-Path
地址的郵件(用於在單獨的郵件伺服器上收集的退回郵件)。例如,From: my@example.com
和Return-Path: bounces@another-domain-for-bounces.org
。在 DKIM 簽名中應該使用哪些域d=xxx
?我已閱讀相關問題,但沒有找到具體答案。
DKIM 的簽名弱點之一是它不包含包含返迴路徑和消息接收者的消息信封。所以你應該使用 example.com 這應該是簽名域。
Tl; dr:您應該使用標頭
From:
地址的域進行簽名。這就是為什麼。我查找了 ESP 發送的簽名電子郵件的標題,例如 MailChimp、SendGrid 等。事實證明,沒有經驗法則。有些使用
From:
地址的域,有些使用Return Path:
域。因為這不是一個非常令人滿意的觀察結果,所以我試圖弄清楚它在實踐中是否真的很重要。RFC 4871第 5.1 節規定:
提示性說明:簽名模組可以被合併到郵件系統的任何部分,包括 MUA、送出伺服器或 MTA。無論在何處實施,簽名者都應注意對可能有問題的消息進行簽名(並因此對其負責)。**特別是,在受信任的飛地內,簽名地址可能根據本地策略從標頭中派生;**SUBMISSION 伺服器可能只對來自經過適當身份驗證和授權的使用者的消息進行簽名。
該文本既不強制執行也不建議特定策略。談到驗證 DKIM 簽名,我知道 Amavis 和 OpenDKIM 根本不關心簽名域是否是電子郵件發件人地址的一部分,而 GMail 也不關心。簽名域應被視為郵件的“信任錨”。GMail 的 Web 界面將顯示用於簽名的域,但如果它與發件人地址不同,則不會發出警告。但它應該。
在我看來,這是規範的一大弱點。垃圾郵件發送者可以使用他有權訪問的任何域來發送正確簽名的垃圾郵件,這些垃圾郵件似乎來自可信賴的個人或組織。我不知道有任何垃圾郵件使用這種技術,但相信我,會有的。DKIM 是一種確保消息真實性的方法。它的初衷並不是要打敗垃圾郵件,而是為真誠的發件人提供一種方法來證明他們的郵件是可以信任的。當垃圾郵件發送者可以偽造時,DKIM 毫無意義。當然,真正的力量來自結合 SPF 和 DKIM(即 DMARC),但這是另一個話題。
請不要使用外國域來簽署您的外發郵件。儘管在技術上是可行的,但這樣做沒有意義。此外,使用信封的
Mail From:
/消息Return Path:
也是一個不太理想的選項:如果在傳輸過程中使用 SRS(以及其他技術),信封發送者將被簡單地重寫。這超出了您的控制範圍,並最終破壞了簽名域與實際消息發送者之間的直接聯繫,該聯繫應保持不變。因此,在我看來,
From:
盡可能在簽署外發郵件時使用發件人域。此外,應該鼓勵在驗證簽名電子郵件時,如果用於簽名郵件的域是發件人地址的一部分,則 ISP 應該尊重。我很想听聽其他意見!如果有人希望進一步深入研究這個主題,我還發現了一篇有趣的文章,其中包含更多參考資料。