我的 SPF 是
neland.dk descriptive text "v=spf1 a:mail6.paradiss.dk a:min.moar.dk
a:arnold.neland.dk include:_spf.google.com -all"
我从 gmail.com 发送时收到此错误[电子邮件保护]
Technical details of permanent failure:
Google tried to deliver your message, but it was rejected by the server for
the recipient domain hotmail.com by mx4.hotmail.com. [65.55.37.72].
The error that the other server returned was:
550 5.7.0 (COL0-MC1-F16) Unfortunately, messages from (209.85.219.42) on
behalf of (neland.dk ) could not be delivered due to domain owner policy restrictions.
_spf.google.com 包括
_spf.google.com descriptive text "v=spf1 include:_netblocks.google.com
include:_netblocks2.google.com include:_netblocks3.google.com ~all"
其中包含 209.85.219.42
那么为什么 hotmail 不接受我的邮件?我也有 neland.dk 的 DKIM 和 DMARC
_dmarc.neland.dk descriptive text "v=DMARC1\; p=reject\; rua=mailto:[email protected]"
如果邮件不是由我自己的服务器签名的,而是由谷歌的服务器签名的,那么我的 DKIM 是否重要?
答案1
“政策限制”是关键。您的 DMARC 记录要求拒绝所有声称来自您域的未经验证的邮件。(p=reject
)。这就是本案所遵循的政策。
您可能已经知道,这里有 3 个相似但不同的身份验证概念:
- 验证发件人合法性(SPF)
- 验证消息完整性,由签署人(DKIM)
- 验证上述内容与作者(DMARC)
DMARC 验证是“全有或全无”(如果发件人或签名者受到损害,则作者验证毫无意义)。来自DMARC 规范(§3.4):
DMARC 没有“短路”规定,例如指定通过一项身份验证测试后可以跳过其他测试。所有测试均需进行报告。
现在,关于你的问题:
“如果邮件不是由我自己的服务器签名,而是由谷歌的服务器签名,那么我的 DKIM 是否重要?”
是的,那么它就突然变得重要了。Hotmail 现在需要查明作者是否 ("[电子邮件保护]“) 已授权签署域名。验证此授权所需的信息不存在,因此出现“由于域名所有者政策限制,无法传递”消息。
只需为 GMail 生成一个 DKIM 密钥,用于对发送的消息进行签名,neland.dk
并确保 GMail 密钥在 DNS 中发布。
GMail 始终使用“Google”选择器前缀对消息进行签名,因此需要在 处发布密钥google._domainkey.neland.dk
- 现在,当 MXhotmail.com
收到来自 GMail 的提交时,它可以使用以下方式进行验证两个都机制(SPF 和 DKIM)并且不必拒绝该消息。
幸运的是,Google 为域名所有者提供了有关在 GMail / Apps 中实施 DKIM 的详细分步指南:
答案2
我已经这样做了,所以我让谷歌从我自己的邮件服务器发送邮件,因为显然我无法在没有谷歌商业应用的情况下设置私钥或获取 google._domainkey.neland.dk 的公钥。
现在我自己的服务器对邮件进行签名。