我试图弄清楚为什么即使电子邮件标有 SPF 也会将伪造的电子邮件发送给主要的电子邮件提供商(gmail.com、outlook.com)hardfail
。该电子邮件还被传递到 Microsoft Exchange,它为PermError
相同的 SPF 记录抛出一个。
我正在使用 SOME_DOMAIN.com 域发送电子邮件,该域定义了损坏的 SPF 记录。该电子邮件是从我自己的 IP 地址传输的,该地址未在 SOME_DOMAIN.com 的 SPF 记录中明确列出。SOME_DOMAIN.com 的 SPF 记录具有以下三个属性,前两个违反 SPF RFC-4408:
- 由于
include:
. - SPF 记录之一中的语法错误,python-spf 引发解析错误。
- SPF 记录包含规则
~all
和-all
,都表示所有地址的集合应该softfail
和hardfail
发送到模拟 admin@SOME_DOMAIN.com 的 Outlook.com 地址的电子邮件将在已发送电子邮件的 SMTP 标头中包含以下错误。此电子邮件已正常发送到用户的收件箱:
Received-SPF: PermError (: domain of SOME_DOMAIN.com used an invalid SPF mechanism)
Gmail 还会将电子邮件发送到用户的收件箱,但会引发不同的 SPF 错误:
spf=hardfail (google.com: domain of admin@SOME_DOMAIN.COM does not designate x.x.x.x as permitted sender) smtp.mail=admin@SOME_DOMAIN.COM
那么这里发生了什么?为什么尽管有 SPF 仍会发送电子邮件hardfail
?SPF 记录损坏是否意味着其他 SMTP 服务器完全无视 SPF?还是我在这里缺少什么...