Domain-Name-System
DNS 區域文件 SPF 配置以支持從多個伺服器和 gmail 發送郵件
我想在域上配置 SPF 以允許從以下位置發送郵件:
- x.com 網站伺服器(x.com 和 www.x.com - 都在同一 IP)
- 其 MX 伺服器(smtp.x.com、mx.x.com、mail.x.com)
- 未列為 MX 伺服器的另一台伺服器 (somehost.x.com)
- 通過 gmail 使用已驗證使用 something@x.com 的帳戶
這個區域文件會起作用嗎?如果不是,它有什麼問題?
$ttl 38400 @ IN SOA ns1.x.com. hostmaster.x.com. ( 201003092 ; serial 8H ; refresh 15M ; retry 1W ; expire 1H ) ; minimum @ NS ns1.x.com. @ NS ns2.x.com. @ MX 10 mx.x.com. @ MX 20 smtp.x.com. @ MX 30 mailhost.x.com. ; SPF records @ IN TXT "v=spf1 a mx a:somehost.x.com include:_spf.google.com ~all" mx IN TXT "v=spf1 a -all" smtp IN TXT "v=spf1 a -all" mailhost IN TXT "v=spf1 a -all"
問題:
- _spf.google.com 是 gmail.com 包含的正確內容,還是僅適用於 Google Hosted Apps?如果僅適用於 Google Apps,我應該從 gmail.com 發送哪些內容?
- 如果不應該從其他任何地方發送郵件,那麼使用 -all 而不是 ~all 是否安全?
- 為每個郵件伺服器添加特定的 SPF 記錄是否有意義?
- 區域文件還有其他問題嗎?
我想在更改我的區域文件之前確認這些事情。該文件的 SPF 配置現在基本相同,只是沒有 google.com 和 somehost,但我想確保在更改它時不會破壞它。
查看 openspf.org 上的嚮導以幫助您編寫正確的 SPF 設置:http ://old.openspf.org/wizard.html?mydomain=x.com
除此之外,您的 SPF 設置對我來說看起來不錯。
您也為每個 MX 主機包含 SPF 記錄是正確的。這些用於以空地址(在 SMTP 協議中)退回電子郵件的情況,然後 SPF 回退到使用發送伺服器的地址。
如果您確定沒有其他伺服器可以為您的域發送郵件,那麼您應該使用
-all
. 當然,這意味著從其他伺服器發送的任何電子郵件都可能被拒絕,如果它們被證明是一些!