Email 为什么我的邮件发件人与我的发件人标题不同是可以接受的?

Email 为什么我的邮件发件人与我的发件人标题不同是可以接受的?,email,smtp,spf,Email,Smtp,Spf,SPF总是让我感到困扰,为什么它不验证From头呢 据我所知,SMTP服务器将通过SPF验证SMTP命令发送邮件或发送信封时提供的主机名(我的示例是从telnet'ing到gmail-SMTP-in.l.google.com: MAIL FROM:<matt@example.com> 查看Sparrow中的消息: 我认为SPF的目的是帮助保护我的域(作为发送者)不被欺骗?但是如果发送者正确配置了SPF(这并不困难,也不昂贵——我只是用上面一个免费的micro ec2实例做的),那

SPF总是让我感到困扰,为什么它不验证From头呢

据我所知,SMTP服务器将通过SPF验证SMTP命令发送邮件或发送信封时提供的主机名(我的示例是从telnet'ing到gmail-SMTP-in.l.google.com:

MAIL FROM:<matt@example.com>
查看Sparrow中的消息:

我认为SPF的目的是帮助保护我的域(作为发送者)不被欺骗?但是如果发送者正确配置了SPF(这并不困难,也不昂贵——我只是用上面一个免费的micro ec2实例做的),那么它似乎不适用

我确实注意到Gmail在我进行的5次测试中有4次将我的邮件放入垃圾邮件中,但我认为这是因为EC2 IP的声誉?或者Gmail正在关注的SPF有什么我遗漏的吗


我遗漏了什么?

SPF记录可能被伪造,除非您的SPF记录设置正确,即您的记录设置为硬失败-全部

不幸的是,大多数人将他们的SPF记录设置为软失败,正如您所描述的,这允许您伪造电子邮件地址


看一看

我认为没有办法阻止这一点(我从中得到了答案)


否则,web生成的电子邮件程序将无法工作。您可以看到evite.com和egreetings.com的链接。这听起来可能是循环的。这是因为无法按照您描述的方式验证From标头

SPF的设计目的不是以这种方式验证标题行

你必须接受From:这句话,这句话是什么意思,是邮件作者一时兴起的产物

请记住,即使电子邮件地址本身是可信的,许多客户端也只显示引号中的内容。在这两种情况下,它们同样可以轻松地显示作曲家想要的内容:

From: "night" <day@example.com>
From: "day" <day@example.com>
来自:“夜晚”
从:“天”
我觉得这太自由了吗?是的。SPF能做些什么吗?不


DKIM可能是您正在寻找的,它侧重于头验证。

您的服务器上设置了什么SPF记录?我正在欺骗的域(litmus.com)有一个硬失败(和一些不相关的IP):-all。我实际从中发送的域具有EC2的默认软传递:~all。除非记录设置为硬失败-all,否则可以伪造电子邮件地址,前提是您的SPF设置正确,但我伪造的地址设置为硬失败-all。SMTP服务器根本不进行SPF验证litmus.com,因为它们不检查from标头just邮件发件人和HELO.My(litmus.com)记录设置为硬失败-all。他们的SPF2记录是什么?
Received-SPF: pass (google.com: best guess record for domain of matt@ec2-23-22-210-XXX.compute-1.amazonaws.com designates 23.22.210.XXX as permitted sender) client-ip=23.22.210.XXX;
From: "night" <day@example.com>
From: "day" <day@example.com>