我已经在邮件服务器上配置了 DKIM (milter-dkim)。从我的域发送的传入电子邮件现在包含以下标头:
X-DKIM: Sendmail DKIM Filter v2.8.3 MYDOMAIN.com o7FLH1Wa032083
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=mydomain.com; s=mail;
t=1281907022; bh=frcCV1k9oG9oKj3dpUqdJg1PxRT2RSN/XKdLCPjaYaY=;
h=Message-ID:Date:Subject:From:To:MIME-Version:Content-Type:
Content-Transfer-Encoding;
b=qetPkilXBdjnuqiKIyvAwsvTvJfAnq5urdgp/i7p/uLJ8DB+svy9A8C6CPmcfELsJ
hDid5k2AN5JD+wM2INmUIgjeAa/IwpGTbuMloj0Wioh4njqIfbATJqOhuqxTjic
1.) 所以我想这可以证实我已正确设置 DKIM,对吗?
但当我查看来自 Google 的消息时,我看到:
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=gamma;
...snip...
DomainKey-Signature: a=rsa-sha1; c=nofws;
d=gmail.com; s=gamma;
...snip...
2.) DomainKey-Signature 和 DKIM-Signature 有什么关系?
答案1
DKIM 是 DomainKeys 协议的较新版本。如果您通过 DKIM 签名邮件,则无需实施 DomainKeys。
答案2
它们是两个不同的东西。DomainKeys 比较老,由 Yahoo! 创建。DKIM 是 DomainKeys + Identified Internet Mail(思科创建的另一种电子邮件验证方案)。
显然,这些标题是兼容的,但一些较新的系统不检查 DKIM,因此您必须生成两者才能让每个人都满意。
答案3
回答您的第一个问题,这意味着您的外发邮件正在被签名,但您必须有相应的 DNS 记录以便接收邮件服务器对其进行验证。
一切设置完成后,如果您检查收到的邮件的标头,您的邮件服务器应该会提供一些成功的指示。如果您有 Google 帐户,它将在“身份验证结果”标头下显示结果。如果设置正确,您应该会看到以下内容:
Authentication-Results: mx.google.com; spf=pass (google.com: domain of
[email protected] designates 1.1.1.1 as permitted sender)
[email protected]; dkim=pass [email protected]
记得设置 SPF 记录,它们比 DKIM/DomainKeys 的检查范围更广。
问题 2,DKIM 是较新的实现。如果您有能力使用 DKIM,请使用它而不是 DomainKeys。