我们最近遇到了一些电子邮件传递问题,因此我发现自己第一次深入研究电子邮件服务器设置世界,以确保我们的电子邮件能够按预期到达。
几天前我运行了邮件测试程序,它告诉我添加这个 DMARC 条目:
v=DMARC1; p=none
我这样做了,但现在我收到了此验证失败的信息:
您的邮件未通过 DMARC 验证
DMARC 策略允许发件人表明他们的电子邮件受到 SPF 和/或 DKIM 保护,并在这两种身份验证方法均未通过时给出指示。在使用 DMARC 之前,请确保您已设置 DKIM 和 SPF。
DMARC 测试失败,但我们未发现任何明显原因。如果您最近修改了 DNS,请等待几个小时,然后再次测试。
为域 _dmarc.example.com 找到 DMARC DNS 条目:
"v=DMARC1; p=none"
验证详情:
mail-tester.com; dkim=policy reason="signing key too small" (768-bit key; unprotected) header.d=example.com [email protected] header.b=________; dkim-atps=neutral
mail-tester.com; dmarc=none header.from=example.com
mail-tester.com; dkim=policy reason="signing key too small" (768-bit key; unprotected) header.d=example.com [email protected] header.b=________; dkim-atps=neutral
From Domain: example.com
DKIM Domain: example.com
每本文,header.b=
标签“包含签名数据的前 8 个字节”,因此我用 删除了该数据________
。不确定这是否有必要,但我认为还是谨慎一点为好。
从上面来看,我认为唯一需要解决的问题就是这个signing key too small
问题。我发现另外两个 DMARC 失败问题,和我自己的一样,没有“任何明显的原因”(请参阅这里和这里),但它们都没有提及这个signing key too small
问题,因此看起来它们没有切中要点。
每这个问题,解决这个问题的方法似乎是使用 1024 位或 2048 位密钥,但我正在使用 Hostmonster,似乎找不到任何方法。这个问题似乎涵盖了 Exchange 环境中的类似问题,但我并不在 Exchange 环境中,并且不确定如何使其适应我的情况。
那么如何更新到 1024 位或 2048 位签名密钥?如果使用 DNS 管理器中的 TXT 记录完成此操作,如何生成密钥?
此外,如果我遗漏了其他明显的问题,请告诉我;如上所述,我对此还很陌生。
答案1
并非所有提供共享托管的托管服务提供商都使用 DKIM 签署出站电子邮件(或者他们使用那个有趣的短虚拟密钥签署)。我个人在 Justhost 和 Hostmonster 上就遇到过这种情况。
您可能必须从他们那里获取 VPS 才能设置 DKIM 私钥 - 通过 WHM/cPanel 或通过 SSH/OpenDKIM。
另一种选择 - 您可以考虑将您的托管服务提供商更改为更好的,具有竞争力的价格。例如到 Contabo