我们最近为从我们网站发出的自动电子邮件实施了 DKIM(静态 IP 上的 SMTP)。但是,我们无法为托管的 Exchange 电子邮件帐户实施 DKIM(托管主机从一系列 IP 发送)。
因此,在 DMARC 报告中,我通过 SMTP 从我们的网站发送的电子邮件通过了,但通过个人 Exchange 用户帐户发送的电子邮件失败了。SPF 也已实施,并且两者都通过了。
据我在网上找到的信息,这不会损害我们的声誉,但我还是想再检查一下,因为我不能 100% 确定我们的 DMARC 设置是否正常:
v=DMARC1;p=无;rua=mailto:[电子邮件保护];百分比=100
DMARC 结果示例:
<record>
<row>
<source_ip>IPADDRESS OMMITTED</source_ip>
<count>1</count>
<policy_evaluated>
<disposition>none</disposition>
<dkim>fail</dkim>
<spf>pass</spf>
</policy_evaluated>
</row>
<identifiers>
<header_from>mydomain.com</header_from>
</identifiers>
<auth_results>
<spf>
<domain>mydomain.com</domain>
<result>pass</result>
</spf>
</auth_results>
</record>
非常感谢您的意见,谢谢
答案1
但是,我们无法为托管的 Exchange 电子邮件帐户(托管从一系列 IP 发送)实施 DKIM。
您的 DMARC 记录非常好。
对于 DKIM,服务器从哪个 IP 地址发送邮件并不重要。定义哪些 IP 地址有权从您的域发送邮件是 SPF 的职责范围。DKIM 专门设计用于解决 SPF 无法充分描述所有邮件流的问题。SPF 不足的地方包括:
- 您的示例,提供商从一系列 IP 发送
- 通过转发器转发的电子邮件
- 通过电子邮件列表传输的消息
因此,DKIM 会添加一个加密标头来对每条消息进行签名。从此,消息来自哪个 IP 地址就无关紧要了。接收方使用的 DKIM 验证器将在 DNS 中查找您的 DKIM 公钥,并使用它来验证它正在评估的签名消息是否确实由您(或您的代理使用您的 DKIM 密钥)签名。
Exchange 没有内置对 DKIM 的支持,但有一个DKIM 插件可用。您可以询问您的提供商是否支持它。如果他们支持,您需要生成 DKIM 密钥,与您的提供商共享私钥 DKIM 密钥,并在您的 DNS 中发布公钥。我写了一个自动生成密钥的 shell 脚本。
如果您的提供商不支持/无法支持/不会支持 DKIM,他们可能会让您通过您控制的另一台服务器中继出站邮件。该服务器将接受来自您托管的 Exchange 的邮件,然后在邮件发送到互联网时对其进行 DKIM 签名。