使用discourse发送的邮件未通过DKIM签名

我已将 Discourse 安装在 VPS 上
我已将 DirectAdmin 安装在另一台运行 Exim SMTP 的托管 VPS 上

我在 Discourse 中使用了 DirectAdmin VPS 上的 SMTP 服务器详细信息

我使用 isnotspam.com 检查了电子邮件

使用 Thunderbird 和 DirectAdmin SMTP 发送电子邮件

结果:通过
已验证的 ID:[header.From=discourse@example.com](mailto:header.From=discourse@example.com)
选择器=x
域=example.com
DomainKeys DNS 记录=x._domainkey.example.com

但是,如果我使用 Discourse 发送,结果会通过,但没有选择器

结果:通过
已验证的 ID:[header.From=discourse@example.com](mailto:header.From=discourse@example.com)
选择器=
域=
DomainKeys DNS 记录=._domainkey.

有什么想法吗?

您期望哪个组件执行 DKIM 签名?

1 个赞

我的 SMTP 服务器应该可以。

但是,当从 Discourse 发送电子邮件时,它没有被同样地签名。

我想知道这是否与 helo forum.example.com 有关。

你已经自己给出了答案 :sunglasses: Discourse充当smtp客户端,DKIM签名必须由接收Discourse邮件的smtp服务器提供。

是的,正确。

所以,当使用 isnotspam 检查时,不同的签名结果让我感到困惑。


不管怎样,我今天重新运行了测试,现在它通过了。

----------------------------------------------------------
DKIM 检查详情:
----------------------------------------------------------

结果:pass
已验证的 ID:header.From=discourse@example.com
选择器=x
域=example.com
DomainKeys DNS 记录=x._domainkey.example.com

我不确定发生了什么,但我确实不得不在 cloudflare 中更新我的 DNS txt 密钥,并更新了邮件服务器的 rDNS。

也许只是需要时间让一切传播或清除一些缓存?

在之前的测试中:

结果:通过
已验证的 ID:[header.From=discourse@example.com](mailto :header.From=discourse@example.com)
选择器=
域名=
DomainKeys DNS 记录=._domainkey.

没有 DKIM 记录,所以它没有签名。

请记住,DNS 不会传播。

无论如何,现在邮件已签名,您应该没问题了吧?

是的,这是检查时的标志,所以需要更新缓存。