為了加強電子郵件伺服器的發送身份驗證,我正在尋找有關該主題的一些有用的提示。
由於我總共有 4 個 Vps 伺服器,用於發送電子郵件、註冊確認、密碼重設等...以及多個網域,因此我希望加強電子郵件授權的安全性。
所以我有VPS1,它是基於IRedMail的電子郵件伺服器,我在其中配置了
域 1、2、3、4 和 5
網域的網站分別位於不同的 vps 伺服器上,因此每個都有不同的 IP 位址。
域 1、2 和 3 在 VPS2 上 域 4 在 vps 3 上,域 5 在 vps 4 上
正確建立 SPF 和 DMARC 記錄的最佳方法是什麼
非常感謝有關此主題的任何幫助。
答案1
假設所有VPS伺服器都連接到VPS 1發送電子郵件,並且所有網域的MX記錄都指向VPS 1的IP位址:
SPF
SPF
TXT
為所有網域建立記錄: "v=spf mx ~all"
.語句中使用的是the~
而不是 the 。這有點爭議,但與下面的註釋有關。硬故障通常會帶來不良的可交付性後果。-
all
-
請注意,Return-Path
(退回郵件去的地方)網域是透過SPF
檢查來檢查的,而不是From
地址(這就是我們需要的原因DMARC
)。因此,如果您的電子郵件使用與寄件者地址不同的退回地址,則將檢查 中的網域Bounce address
是否有SPF
記錄。
請記住,SPF
對於透過傳輸/收件匣規則或郵件清單轉發的電子郵件,檢查將失敗(除非Return-Path
標頭被重寫)。請注意,Return-Path
(退回郵件去的地方)網域是透過SPF
檢查來檢查的,而不是From
地址(這就是我們需要的原因DMARC
)。因此,如果您的電子郵件使用與寄件者地址不同的退回地址,則將檢查 中的網域Bounce address
是否有SPF
記錄。使用子網域時也是如此。對於用作退回位址的每個子網域,您需要設定 SPF(和 MX)記錄。
DMARC
TXT
在 _dmarc.domain.com: 的每個網域中建立「DMARC」記錄"v=DMARC1;p=reject"
。由於您的設定非常簡單,您可能不想理會XML
發送給您或第三方服務的格式的報告,因為您知道應該只授權一台主機代表您的網域發送電子郵件。如果您擴展服務,您可以新增標籤rua
以啟用接收報告。
德基姆
我強烈建議在您的設定中添加簽名配置,以在身份驗證失敗(如上述場景中所述)的DKIM
情況下提高交付能力。儘管當電子郵件的部分內容在傳輸過程中發生變更(例如地址重寫)時,身份驗證可能會失敗,但在轉發失敗時仍將繼續存在。在一起,將相互補充,以提高交付能力。SPF
DKIM
SPF
DKIM
SPF
DKIM
設定 DKIM 的一些基本建議是建立位長為 2048 的 DKIM 金鑰對,並在 ._domainkey.domain.com 的 DNS 記錄中發佈公鑰,TXT
您可以在其中選擇自己的選擇器名稱。出於密鑰輪換的目的,明智的做法是配置第二個選擇器記錄,以便在初始私鑰洩露時使用,或作為按計劃輪換的最佳實踐(例如每 6 個月)。
關於 DKIM 簽名最佳實踐還有很多話要說,但是,這超出了您的問題範圍,並且在 RFC 中得到了完美的闡述。
免責聲明
此設定反映了我對如何在您所描述的場景中設定電子郵件身份驗證的選擇。某些領域存在一些假設,這些假設可能不正確或不完整,否則會導致不同的方法。