DKIM 正在验证,但 mxtoolbox 报告为“DKIM 签名未验证”?

DKIM 正在验证,但 mxtoolbox 报告为“DKIM 签名未验证”?

我试图弄清楚为什么我的某个网站发出的很多电子邮件无法发送(特别是 sky.com 和 gmail.com)。

在我的服务器上,我们有一个可以为我们生成 DNS 记录的工具:

RECORD            TTL         TYPE      VALUE
------            ---         ----      -----
_domainkey        3600   IN   TXT      "t=y; o=~;"
mail._domainkey   3600   IN   TXT      "k=rsa; p=xxxx"

(xxx 为完整密钥)

这就是我所拥有的DNS 记录 TXT记录:

在此处输入图片描述

mail-tester.com带回了这个(一切看起来都很好);

在此处输入图片描述

...然而工具箱返回:

在此处输入图片描述

在此处输入图片描述

令人沮丧的是,如果我在自己的 gmail.com 帐户上检查原始电子邮件,它会显示 DKIM 有效:

在此处输入图片描述

错误告诉我什么DKIM-Signature Not Verified?我绞尽脑汁想要提高送达率(我尝试通过 GlockApps 进行测试,但不知为何仍然出现大量拒绝)。我肯定漏掉了什么

更新2:不幸的是,MXToolbox 仍然将此列为问题。不过其他所有工具都说它没问题,所以我想知道这是否是误报。使用 GlockApps,我现在可以看到只有 Gmail 内容从他们的测试中被弹出:

在此处输入图片描述

我读过相关内容 - 听起来我们在向人们告知不久前发布的糟糕的 GDPR 内容时可能搬起石头砸自己的脚。我们给每个人发了电子邮件(在它发布之前),让他们知道如果他们不给我们许可,我们将无法联系他们。也许 gmail 过滤器将其视为垃圾邮件(因为我们的很多用户都在使用 gmail),并因此惩罚了我们。哦,讽刺!所以现在听起来解决这个问题的唯一方法是要求人们检查他们的垃圾邮件箱(并标记为“非垃圾邮件”)

答案1

首先,您的 TXT 记录是错误的。

example.com如果您使用名为(又名选择器)的键从域发送邮件mykey,则语法为:

mykey._domainkey.example.com     IN TXT    "v=DKIM1; p=xxx"

您可能还想添加t=s

当您确信密钥签名和验证有效时,我建议您添加一个DMARC资源ADSP记录,因为它会通知接收邮件服务器应该做什么,以防收到未签名或使用错误密钥的邮件。

语法很简单(基于我自己的邮件服务器设置):

_adsp._domainkey.example.com  IN TXT  "dkim=all"
_dmarc.example.com            IN TXT  "v=DMAR1; p=quarantine;  sp=reject; pct=100; adkim=s; aspf=s; rua=mailto:[email protected]; ruf=mailto:[email protected]; rf=afrf; ri=86400; fo=1

更新

如果您向 Gmail 帐户等发送测试邮件,则可以轻松查看 DKIM 和 DMARC 是否正常运行。

我已经为自己的域名启用了 DKIM molgaard.eu,因此我发送至 Gmail 的电子邮件将包含以下标头:

Authentication-Results: mx.google.com;
       dkim=pass [email protected] header.s=mar2018 header.b=db8+ExPV;
       spf=pass (google.com: domain of ... as permitted sender) smtp.mailfrom=...;
       dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=molgaard.eu

<SNIP>

DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=molgaard.eu; 
h=content-language:x-mailer:content-type:content-type:mime-version
:message-id:date:date:subject:subject:from:from; s=mar2018; t=1583565649; 
x=1585380050; bh=...; b=...

我的邮件选择器名为 mar2018,因为这是我制作密钥的月份和年份。:-)

并且正如您从身份验证结果中看到的,DKIM 和 DMARC 都通过了(SPF 也是如此),这意味着来自我的邮件服务器的邮件应该进入人们的收件箱 - 而不是垃圾邮件文件夹。:-)

实际上我的政策更加严格,因为我已经在 DMARC 记录中声明,任何未签名或使用错误密钥签名的邮件都应被丢弃,而不是落入接收方的任何文件夹中。:-)

答案2

不要相信 MXtoolbox 进行这种特殊的 DKIM 检查。我个人在 MX toolbox 中多次看到过这样的误报

  1. 将 DMARC 策略暂时恢复为“无”
  2. 使用 Glock Apps 改进邮件内容以摆脱 Gmail 垃圾邮件过滤器
  3. 使用 DMARC 报告处理系统 (EasyDMARC、DMARC Analyzer、Dmarcian) 之一来识别所有合法源并使它们符合 DMARC 要求,然后才考虑将域策略转换为“拒绝”

相关内容