SPF 记录 - 发件人服务器 SPF 记录 permerror

SPF 记录 - 发件人服务器 SPF 记录 permerror

我似乎无法为我们的客户获取 SPF 记录,Google 邮件在查找时不断失败。

我的 SPF 记录是

v=spf1 a ip4:80.74.254.215 包括:mx1.helloevery1.co.uk 包括:_spf.google.com 包括:smtproutes.com 包括:smtpout.com

客户端的主要邮件服务器是

smtproutes.com 和 smtpout.com

这些都运行良好,SPF 按预期通过。

mx1.helloevery1.co.uk 是我们的邮件服务器。这是一个简单的 ISPConfig Postfix 设置。我们通过 1 个帐户发送所有邮件,假设它是“[电子邮件保护]“。

已设置用户名和密码以发送,但我们在应用程序中更改了“发件人”地址。发件人地址是“[电子邮件保护]“。

[电子邮件保护]“未在 mx1.helloevery1.co.uk 上设置。它仅在客户端服务器上设置。

当我从网站通过 SMTP 服务器发送邮件到我的电子邮件帐户时收到以下错误。

已接收-SPF:permerror(google.com:查找期间处理出现永久错误[电子邮件保护])客户端IP=212.71.234.103;

身份验证结果:mx.google.com;spf=permerror(google.com:查找期间处理出现永久错误[电子邮件保护][电子邮件保护]

这看起来像是尝试在我的 SMTP 服务器上查找域(未配置)。如果我在我的 SMTP 服务器上设置域并创建一个帐户,那么当我通过我的 SMTP 服务器发送时,它将尝试在本地发送。

我一直认为 SPF 只是一种验证工具,用来说明哪个服务器被允许发送,但从未真正考虑过它来自哪个电子邮件。

我陷入困境,因为我找不到与我相关的有关 SPF 记录创建的资源

答案1

SPF 记录表明哪些邮件服务器被允许从发送域发送邮件。基本上,就是发件人:地址中的内容。

因此如果有人以“[电子邮件保护]“并且接收邮件服务器检查 SPF,它会在“ninja.com”上查找 SPF 记录以查看发送邮件服务器是否在列表中。

这回答了你的问题了吗 ?

答案2

谷歌权限错误mx1.helloevery1.co.uk是您的 SPF 指令中包含的域include:没有配置自己的 SPF 记录。此问题已处理这里

包括:<域>:指定领域寻找匹配项。[…]警告:如果领域没有有效的 SPF 记录,结果将导致永久性错误。有些邮件接收方会根据权限错误

作为你发现了,使用ip4: ip6:机制会有所帮助(同时使用两者,因为您不知道 Google 看到的发送主机的 IP 是什么,因此如果仅使用可能会失败ip4:)。为了提供对 IP 地址更改的一定弹性,您可以允许一系列 IP 地址(指示)。

但是,如果您有权访问 -ed 域的 DNS include:,则为其配置 SPF 记录是一种更干净的解决方案,这样您的发件人的 IP 地址就可以通过该 SPF 测试。它使您的其他 SPF 记录能够抵御 IP 地址更改。

答案3

在 Mwuanno 的建议下,我将记录更改为基于 ip4 和 ip6,并开始接受 spf 记录。记录现在显示

v = spf1 a ip4:80.74.254.215 ip4:212.71.234.103 ip6:2a01:7e00 :: f03c:91ff:fedb:4ec8 包括:smtproutes.com 包括:smtpout.com ~全部

这似乎对我有用,SPF 通过了

答案4

末尾带有 ~all 参数的 SPF 记录可能起作用的原因不一定是因为包含 IP4 和 IP6 地址,而是因为 ~all 参数。

~all 是软失败:SPF 记录中未列出的所有邮件服务器均无权使用发件人的域发送邮件,但域所有者不愿意对此做出强烈断言。换句话说,SPF 检查不一定会失败,接收服务器可能会接受电子邮件。

相关内容