SPF 对比 DMARC 对比 DKIM — 邮件认证协议详解

三种协议,一个目标:阻止邮件伪造

三层防线

SPF、DMARC 和 DKIM 是邮件认证的三大支柱。SPF 规定谁能发信。DKIM 证明邮件内容未被篡改。DMARC 设定检查失败时的处理策略。三者齐备 = 几乎为零的伪造风险。缺少任何一个 = 攻击者只需攻破一把锁。

配置率(159 个域名)
29.6%
已配置 SPF
17.6%
已配置 DMARC
9.4%
已配置 DKIM
SPF — 发件人策略框架

SPF 是一条 DNS TXT 记录,列出了授权的发件服务器。如果不在列表中的服务器尝试发信,SPF 就会失败。但问题是:SPF 有 10 次 DNS 查询限制。很多大型域名触达此限制后静默失败。这就是为什么单靠 SPF 不够。我们检查的域名中只有 29.6% 有 SPF——大多数域名零发件人验证。

DMARC — 基于域名的邮件认证

DMARC 在 SPF 和 DKIM 之上增加了一个策略:告诉接收方拒绝或隔离伪造邮件。这才是真正能阻止伪造的那一个。没有 DMARC,一封通过 SPF 或 DKIM(或两者)的伪造邮件就会被投递。只有 17.6% 的域名配置了它。如果只配一个协议,配 DMARC——即使没有 SPF,DMARC 的策略也能告诉接收方你的立场。

DKIM — 域名识别邮件

DKIM 用私钥对发出去的邮件签名。接收方用 DNS 中的公钥验证签名。它证明邮件内容在传输过程中没有被修改。它是三个中最难部署的(需要密钥管理),也是最少见的——我们检查的域名中只有 9.4% 有 DKIM。

SPF vs DMARC vs DKIM:哪个最重要?
协议 作用 我们的数据 建议
SPF SPF 发件人验证 29.6% 已配置 必需但不够
DMARC DMARC 策略执行 17.6% 已配置 最重要——选一个就选它
DKIM DKIM 消息完整性 9.4% 已配置 锦上添花
真实 DMARC 记录示例(gmail.com)
v=DMARC1; p=reject; pct=100; rua=mailto:mailauth-reports@google.com
结论

如果只能选一个协议,选 DMARC。它是唯一一个告诉接收方如何处理伪造邮件的协议。没有 DMARC 的 SPF 只是一个建议。没有 DMARC 的 DKIM 证明完整性但不证明意图。三者齐备是最佳方案——但只有 DMARC 也比 SPF+DKIM 却没有策略要强。

亲自试试

使用我们的免费工具,实时验证任意邮箱地址

立即验证邮箱