透過第三方發信時的 SPF 設定,以 Office 365、AWS SES、Gmail 為例

2020-06-06 Mail

公司內部一直有大量寄信的需求,從「正經的帳號驗證信」到「不正經的電子報」都有,如果要讓信件安全的送達使用者的信箱而不 SPAM 其中有很多技巧,而這篇要談的是 DNS SPF record。

發件人策略框架 SPF ((Sender Policy Framework)) 是一種郵件驗證機制,用於防止冒用網域名稱而生,避免他人冒用你的 eMail 位址發信,可以在 SPF 記錄寫上 Mail Server 的發信來源作為驗證,例如 IPv4/IPv6, 主機/網域名稱等。

這種機制目前在各大 mail provider 都有嚴格管制,像是三大巨頭:

  • Gmail
  • Yahoo
  • Hotmail

設定 SPF 是直接以 txt record 新增記錄,並在 value 宣告 v=spf1

以 Google 為例,查詢 dig txt google.com 可以找到:

"v=spf1 include:_spf.google.com ~all"

SPF 記錄的 讀取順序是由左至右,並且支援以下參數:

  • a 符合主機名稱、網域名稱
  • mx 符合該網域的 MX 記錄,通常是郵件進/出都是同一台時會指定此參數
  • ipv4
  • ipv6
  • include 將發信者 IP 和 SPF 指向另一個網域,通常是透過第三方發信,例如 Office 365。

透過第三方發信時的 SPF 設定,以 Office 365、AWS SES、Gmail 為例

依現在的雲服務發達程度,很多公司已經不自己提供 Mail Service 而是直接拿雲端服務使用,而且更便宜 (小量甚至不用錢),在這篇提供幾種常見的 Mail Software Service 的 SPF 設定方式:

  • Office 365

Microsoft Office 官方文章就有提到「設定 SPF 以協助防止詐騙」設定方法:

v=spf1 include:spf.protection.outlook.com ~all
  • AWS SES

AWS SES 文件「在 Amazon SES 中以 SPF 驗證您的電子郵件」也有描述:

v=spf1 include:amazonses.com ~all
  • Gmail

最後是 Gmail 「使用 SPF 記錄避免電子郵件遭到假冒

v=spf1 include:_spf.google.com ~all

給 Mr. 沙先生一點建議

彙整

分類

展開全部 | 收合全部

License

訂閱 Mr. 沙先生 的文章

輸入你的 email 用於訂閱