Exchange 2010 忽略 SPF 记录

Exchange 2010 忽略 SPF 记录

我们正在使用 Exchange 2010,并且已经为我们的授权邮件服务器 IP 设置了 SPF 记录。作为使用我们的域名进行的测试,我尝试从互联网上的另一台计算机发送电子邮件,该计算机的 IP 未列在 SPF 记录中。其他电子邮件服务由于 SPF 失败而拒绝了该邮件,但我们自己的交易所接受了它。这告诉我我们的交易所不会拒绝未通过 SPF 记录的电子邮件。我在我们的交易所上启用了 SenderID 来拒绝未通过 senderID 的电子邮件,但没有任何区别。

下面是我从邮件头中提取的 SPF 信息,该邮件头未通过 SPF 但被我们的 Exchange 接受。

已接收 SPF:无(exchange2010.domainname:user@domainname 未指定允许的发件人主机)

答案1

如果您的 Exchange 服务器尊重其他域的 SPF 记录而不是您的域的 SPF 记录,那么您可能已将内部 DNS 设置为对您的域名具有权威性,但您的内部 DNS 服务器中没有 SPF 记录。

解决方案:将您的 SPF 记录添加到您的内部 DNS 服务器。

答案2

当 SPF 状态 = FAIL 时,Exchange 发件人 ID 代理将采取行动。您的测试电子邮件的 SPF 状态 = NONE。没有 SPF 记录,因此发件人 ID 代理无法根据 SPF 记录采取任何行动,因为它不存在。

答案3

0) 创建一个包含您的服务器和您要保护的域的 FQDN 的 SPF 记录。例如:

richter.hu v=spf1 ip4:82.131.210.2 ip4:195.228.143.98 -all

1) 等待 dns ttl 时间将 spf 记录传播到互联网 dns 服务器上。您可以使用 mxtoolbox.com 检查它(更改为 spf 记录)。

2)安装运输代理

get-transport agent & $env:ExchangeInstallPath\Scripts\Install-AntiSpamAgents.ps1

并在边缘服务器上重新启动 ms exchange 传输服务。

3)ipconfig /flushdns在您的边缘服务器上运行。

4)

set-senderidconfig -SpoofedDomainAction Reject 
set-senderidconfig -TempErrorAction Reject

5)在边缘服务器上重新启动 ms exchange 传输服务。

6)使用 powershell send-mailmessage cmd let 从外部 smtp 服务器发送测试邮件。

相关内容