使用Amazon SES和Google Apps的正确SPF记录是什么

Ran*_*000 14 email spf google-apps amazon-ses

什么是适用于Amazon SES和Google Apps的正确SPF记录:

Google Apps表示他们希望您使用"〜"代码:http://support.google.com/a/bin/answer.py? hl = zh-CN&answer = 178723,但大多数其他示例都有短划线" - "代替.

亚马逊希望:"v = spf1 include:amazonses.com -all"

Google希望:"v = spf1 include:_spf.google.com~all"


我们目前有这个,将两者结合在一起:

TXT"v = spf1包括:amazonses.com包括:_spf.google.com~all"

SPF"v = spf1包括:amazonses.com包括:_spf.google.com~all"


1)这是正确的SPF记录吗?

2)如果TXT和SPF DNS记录的记录完全相同,我们是否遗漏了任何内容?这就是我们所拥有的,我们没有别的东西.

我们只发送来自Google Apps和Amazon SES的电子邮件,没有别的.

Vit*_*sov 14

  1. 发布TXT记录:

    "v=spf1 include:_spf.google.com include:amazonses.com ~all"
    
    Run Code Online (Sandbox Code Playgroud)

    Amazon SES 文档说,域不需要额外的SPF配置,但事实证明,添加include:amazonses.com到记录也会使发件人ID通过.即使发件人ID被认为 已过时,一些接收器也可以实现它.

    如果Amazon SES 配置为使用自定义MAIL-FROM子域,则发布子域的另一个TXT记录:

    "v=spf1 include:amazonses.com ~all"
    
    Run Code Online (Sandbox Code Playgroud)

    设置自定义子域以获得更好的可传递性和客户体验是一件好事.例如,域名将显示mailed-by在Gmail 中的字段中.

    您可以使用-all而不是~all.在这种情况下,收件人可能会拒绝从SPF记录中未涵盖的来源发送的电子邮件.

  2. 根据RFC 7208的3.1节:

    SPF记录必须仅作为DNS TXT(类型16)资源记录(RR)[RFC1035]发布.

    因此,SPF记录类型现已过时.

  3. 关于您的评论,这里有一个简单的方法来测试SPF是否有效:

    • check-auth@verifier.port25.com从Gmail和Amazon SES测试电子邮件表单发送电子邮件.
    • 然后,搜索自动回复SPF check: pass.

  • 虽然我同意你的观点,亚马逊表示不需要触及spf记录,但我发现如果我在我的spf记录中包含amazonses.com,如此处所示`"v = spf1 include:_spf.google.com include:amazonses .com~all"`然后check-auth@verifier.port25.com的Sender-ID检查从softfail变为pass.我不认为这会提高可传递性,但是通过它可能更干净吗? (3认同)
  • @triadiktyo:这是一个很好的收获。我已经相应地更新了帖子。未来的读者请注意:port25 不再验证发件人 ID。 (2认同)

小智 10

正确的是在SPF中包含每个发件人,关于 - 或者它是SPF属性

" - "=仅允许列出的主机

"〜"=列出的主机应该发送但可能存在另一个发送方.

如果您100%确定您拥有所有列出的发件人,您可以更改〜为 - 但是您不应该同时保留两者.

TXT"v = spf1包括:amazonses.com包括:_spf.google.com -all"

www.openspf.org/SPF_Record_Syntax

  • 亚马逊SES是否明确表示您不需要为SPF做任何事情?请参阅http://docs.aws.amazon.com/ses/latest/DeveloperGuide/authenticate-domain.html (2认同)