标签: SPF

  • 从 SPF、DKIM 到 DMARC:邮件域名认证的完整链路

    整理说明:本文属于“2025-2026 技术笔记整理”系列,于 2026 年 8 月集中整理并公开发布。

    SPF、DKIM、DMARC:从可观测到严格保护的配置路径

    三项机制解决的是不同问题:SPF 声明哪些系统可以代表域名发信,DKIM 为邮件生成数字签名,DMARC 则检查它们是否与用户看到的 From 域名对齐,并给出失败邮件的处理策略。认证能降低冒用风险,却不是群发许可或进箱保证。

    SPF:约束信封发件来源

    收件方用连接 IP 检查信封 MAIL FROM(退信地址)域名的 TXT 记录,必要时也检查 HELO。一个域名只能发布一条有效 SPF 记录,多个来源应合并。includeamx 等会触发 DNS 查询,评估过程最多允许 10 次此类查询,因此不要无限叠加服务商。

    example.com. IN TXT "v=spf1 ip4:192.0.2.10 include:_spf.provider.example ~all"

    转发可能改变连接来源,使 SPF 失败;同时,SPF 通过也只说明信封域名获授权。DMARC 要求该域名与 From 域名按严格或宽松模式对齐。

    DKIM:验证签名与内容完整性

    发信系统用私钥对选定邮件头和正文摘要签名,收件方从 selector._domainkey.example.com 查询公钥。私钥不得放入 DNS 或代码仓库;选择器让旧、新密钥可以并行,便于轮换。转发时只要已签名部分未被破坏,DKIM 通常仍可验证。

    s2026._domainkey.example.com. IN TXT "v=DKIM1; k=rsa; p=PUBLIC_KEY"
    _dmarc.example.com. IN TXT "v=DMARC1; p=none; rua=mailto:dmarc@example.com"

    DMARC:以 From 域名做最终对齐

    DMARC 在“对齐的 SPF”或“对齐的 DKIM”至少一项通过时通过。策略可设为 nonequarantinerejectrua 接收聚合报告,可能包含基础投递元数据,应设置访问控制并按隐私要求保存。

    推荐的渐进上线步骤

    • 盘点业务系统、客服平台、营销平台和退信域,先停止未知来源。
    • 合并 SPF,先用 ~all 观察,确认来源完整后改为 -all;为合法来源启用 DKIM。
    • 发布 p=none,连续分析聚合报告,修复未对齐的合法流量。
    • 逐步使用 pct 提升 quarantine 覆盖率,确认无误后再到 reject
    • sp 明确子域策略,并定期移除停用供应商与轮换 DKIM 密钥。

    策略升级应基于真实报告,而不是一次性照抄模板。对营销邮件还要取得适当同意、标明发件主体、提供有效退订并抑制已退订地址;对交易邮件也应限制用途和频率。认证负责证明身份,合规发送和良好名单维护才决定长期信誉。