SPF(发件人策略框架)似乎是打击垃圾邮件发送者/欺骗的好方法。
但是,尽管多次阅读解释,我还是不太了解如何正确配置它。
假设我有我的服务器在哪个a.x.com
主机www.x.com
等等。b.x.com
c.x.com
我也有a.co.uk
b.net
c.info
等等,每个都有各种各样的子域,都托管在x.com
对于所有这些域和子域,我想允许从a.x.com
我还希望他们都允许从 Gmail 向所有这些域发送邮件。
如何使用 SPF 进行设置?
我可以为x.com
(或a.x.com
)设置一个 SPF 记录,然后为其他所有内容设置一个简单的包含/指向x.com
记录的指针,还是需要以不同的方式完成?
任何人都可以为上述示例提供一些 SPF 记录吗?
注意:我的问题的第二部分已得到解答(使用“ v=spf1 include:x.com -all
”来包含/指向x.com
的记录),但设置内容的关键部分x.com
仍未得到解答......
您无法避免更改 x.com 以外的域的区域文件,但您可以通过定义托管在一个域上的通用策略并
redirect
在其他域上使用 SPF 关键字来为自己省去很多麻烦。例子:x.com
域的区域文件中:_spf.google.com
是保存 Gmail SPF 记录的记录。不确定它是否记录在案。理论上你应该include:gmail.com
,但这是一个重定向,_spf.google.com
并且至少有一个广泛使用的 qmail SPF 补丁没有正确遵循它(在 2008 年 8 月得到修复,但可能仍会部署。)这两个策略是示例,当然 -在调试时,拥有多个不同级别的严格性非常有用,因为您只需更改目标域中的短名称,而不是容易出错的复制粘贴。或者
等等。我使用
redirect
, notinclude
来使 SPF 检查将当前评估的记录完全替换为我要重定向到的记录。include
不这样做 - 例如, an-all
末尾的 aninclude
不会导致评估停止(include
这是一个很大的用词不当。)include
当你想从另一个域“别名”一个 SPF 记录时,你应该避免使用,因为它非常脆弱 -如果您不小心忘记了尾随 -all,您可能会导致该域上的整个 SPF 无效。编辑:但请注意,如果您想允许 Gmail 的服务器作为发件人,您需要保持警惕。Gmail chaptcha 已被破解,这意味着可以自动化帐户注册,这意味着 Gmail 可以(间接)用作开放中继(我每周收到数十个垃圾邮件机器人注册请求,用于我的公司讨论论坛,全部使用gmail.com 电子邮件地址 - 这些地址是实时的,我允许其中一些地址进行检查。)此外,任何拥有 Gmail 帐户的人都可以绕过 SPF 检查,如果熟悉您域中电子邮件地址的 uwsername 部分.
是的,您可以将来自您的一个域的配置包含在所有其他域的 SPF 记录中。将其他域的 SPF 记录设置为以下内容应该可以解决问题:
您是否尝试过使用http://www.openspf.org/上的网络工具?它可能会让你更容易处理这个......
只需在右上角的框中输入您的域,然后单击“开始”按钮。从那里,您应该可以快速进行设置。
标准RFC 4408提供了一些与您想要的非常接近的示例。这是 x.com 的 zonefile 的摘录:
笔记:
是的,您需要将特定的 SPF 记录分别添加到每个域。
原因是 DNS 中唯一(有用的)别名类型记录是
CNAME
记录。但是,该CNAME
记录会导致RRset 中的所有RRtypes 发生别名 - 没有办法说“CNAME
SPF 记录而不是MX
记录”