在过去的一个小时里,我一直在深入研究 SPF、浏览 RFC-4408another tutorial

我拥有自己的域,后缀安装在该域后面的服务器上。除了我的普通地址之外,我还希望能够使用我自己的电子邮件地址作为发件人使用 GMail 发送电子邮件。

我确实收到了很多退回垃圾邮件,其中垃圾邮件发送者使用我的电子邮件地址作为“发件人”行 :( 据我了解,SPF 用于检查是否允许给定的 SMTP 服务器发送带有某些发件人域名。这将有助于上述反弹。

很明显,如果我希望能够通过 gmail 发送邮件,我必须允许 gmail 通过 SPF 记录以我的名义发送。

their help 之后,我添加了以下 TXT 记录:

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

他们特别建议不要使用 -all 作为失败规则。

鉴于 ~all 是仍然接受所有消息的“软失败”, 启用 SPF 的意义何在?

我尝试从外部主机发送一些邮件,它们被接受,唯一的区别是我的邮件服务器假定没有 SPF 记录。

通过 GMail 发送时的日志摘录:
May  8 15:15:58 h2150855 policyd-spf[6184]: None; identity=helo; client-ip=300.300.300.300; helo=mail-lf0-f52.google.com; [email protected]; [email protected]
May  8 15:15:58 h2150855 policyd-spf[6184]: Pass; identity=mailfrom; client-ip=300.300.300.300; helo=mail-lf0-f52.google.com; [email protected]; [email protected]

...并通过第三方服务器发送:
May  8 15:19:17 h2150855 policyd-spf[6554]: None; identity=helo; client-ip=301.300.300.300; helo=theserver.example.com; [email protected]; [email protected]
May  8 15:19:17 h2150855 policyd-spf[6554]: None; identity=mailfrom; client-ip=301.300.300.300; helo=theserver.example.com; [email protected]; [email protected]

我能看到的唯一区别是 postfix SPF 插件将 gmail 邮件明确标记为 Pass ,而另一个标记为 None

我现在认为添加 SPF 并没有真正对我的邮件设置做任何事情,我正在考虑再次删除它。

最佳答案

它推荐 ~all 而不是 -all 的原因是它与 DMARC 交互的方式;建议使用 -all 早于 DMARC 的存在。如果您单独使用 SPF,-all 确实是一个有效(且正确)的设置,但 -all 通常会破坏 DMARC,因为不会评估其规则。如果您设置 ~all 默认 SPF 操作,它将决定权交给 DMARC 层,此时您可以说“我们认为 SPF 软故障是硬故障”,然后继续获得 DMARC 的其他好处。

因此,简而言之,如果您使用的是 DMARC,那么 ~all 并非毫无意义。 ( ?all 总是 毫无意义!)

关于email - 将 SPF 记录与最终的 ~all 规则一起有什么意义?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37100363/

10-12 04:43