DMARC

启用 DMARC

使用 DMARC 管理可疑电子邮件

您可以在网域的 DNS 记录中添加 DMARC 政策,从而启用基于网域的消息认证、报告和一致性 (DMARC) 验证机制。该政策采用 DNS TXT 记录形式,指定您的网域如何处理可疑电子邮件。

DMARC 政策支持三种处理可疑电子邮件的方式:

  • 不对邮件采取任何操作,仅将其记录在每日报告中。
  • 将邮件标记为垃圾邮件。Gmail 会将这些邮件放入收件人的垃圾邮件文件夹。
  • 通知接收邮件的服务器拒绝邮件。这也会导致 SMTP 将邮件退回给发件人。

DMARC 政策示例

以下是一些政策示例。

重要提示:这些示例中使用的都是示例域名。请使用您自己的域名替换 solarmora.com

DMARC TXT 记录值指定了这些示例中的值。

针对未通过 DMARC 检查的邮件执行的操作 TXT 记录内容
对未通过 DMARC 检查的邮件不执行任何操作。通过电子邮件将每日报告发送到 dmarc@solarmora.com。 v=DMARC1; p=none; rua=mailto:dmarc@solarmora.com

对于未通过 DMARC 检查的邮件,将其中的 5% 放入收件人的垃圾邮件文件夹。通过电子邮件将每日报告发送到 dmarc@solarmora.com。

v=DMARC1; p=quarantine; pct=5; rua=mailto:dmarc@solarmora.com

拒绝所有未通过 DMARC 检查的邮件。将每日报告发送到以下两个地址:postmaster@solarmora.com 和 dmarc@solarmora.com。

SMTP 将未通过检查的邮件退回给发件人。

v=DMARC1; p=reject; rua=mailto:postmaster@solarmora.com, mailto:dmarc@solarmora.com

添加 TXT 记录以启用 DMARC

要启用 DMARC,请使用 DNS TXT 记录更新您的网域设置。

关于 TXT 记录

TXT 记录就是包含网域外部来源所使用文本信息的 DNS 记录。请在域名托管服务商网站(而不是 Google 管理控制台)中将 TXT 记录添加到您的网域设置。

请参阅有关更新 DNS TXT 记录的提示,详细了解如何使用 TXT 记录。

添加 DMARC TXT 记录

要为您的网域添加 DMARC TXT 记录,请按以下步骤操作。

重要提示:

  • 这些示例中使用的都是示例域名。请使用您自己的域名替换 solarmora.com
  • 请将示例值替换为您自己的 DMARC 政策值。
  1. 登录域名提供商的管理控制台。
  2. 找到更新 DNS 记录的页面。

    子网域:如果您的域名托管服务商不支持更新子网域的 DNS 记录,请将记录添加到父级网域。了解如何更新子网域的 DNS 记录

  3. _dmarc 处添加一条 DNS 记录

    TXT record name(TXT 记录名称):在 DNS 主机名下方的第一个字段中输入:
    _dmarc.solarmora.com

    TXT record value(TXT 记录值):在第二个字段中输入指定您的 DMARC 政策的值,例如:
    v=DMARC1; rua=mailto:dmarc-reports@solarmora.com; p=quarantine; pct=90; sp=none
     

  4. 保存更改。

DMARC TXT 记录值

注意:Gmail 不支持用于发送失败(取证)报告的 DMARC ruf 标记。

标记名称 是否必需 说明和值

v

必需 协议版本。必须为 DMARC1

p

必需

指定网域处理可疑邮件的方式:

  • none:不对邮件采取任何操作。将可疑邮件记录在每日报告中。
  • quarantine:将邮件标记为垃圾邮件,并将其移至收件人的 Gmail 垃圾邮件文件夹。收件人可以通过 Gmail 查看其垃圾邮件
  • reject通知接收邮件的服务器拒绝邮件。发生这种情况时,接收邮件的服务器应该会向发送邮件的服务器发送退件通知。

pct

可选

设置要对百分之多少的可疑邮件应用 DMARC 政策。可疑邮件是指未通过 DMARC 检查的邮件。

必须是 1100 之间的整数。默认值为 100

rua

可选

用于接收有关您网域的 DMARC 活动报告的电子邮件地址。请使用您自己的电子邮件地址或创建新的电子邮件地址来接收报告。

电子邮件地址必须包含 mailto:,例如:mailto:dmarc-reports@solarmora.com

要将报告发送到多个电子邮件地址,请使用英文逗号分隔电子邮件地址。

sp

可选

为主网域中子网域发送的邮件设置政策。如果您想为子网域指定不同的 DMARC 政策,请使用此选项。

  • none:不对邮件采取任何操作。将可疑邮件记录在每日报告中。
  • quarantine:将邮件标记为垃圾邮件,并保留邮件以进行后续处理。
  • reject指示接收邮件的服务器拒绝邮件。
adkim 可选

设置 DKIM 匹配模式。该模式会指定邮件信息与 DKIM 签名应有的匹配程度。

  • s:严格。发件人域名必须与 DKIM 邮件标头中对应的 d=name 完全匹配。
  • r:宽松(默认设置)。允许部分匹配。接受 DKIM 邮件标头中 d=domain 的任何有效子网域。

aspf

可选

设置 SPF 匹配模式 (ASPF)。该模式会指定邮件信息与 SPF 签名应有的匹配程度。

  • s:严格。邮件的 from: 标头必须与 SMTP MAIL FROM 命令中的 domain.name 完全匹配
  • r:宽松(默认设置)。允许部分匹配。接受 d=domain 的任何有效子网域。

逐步部署 DMARC

您可以同时使用政策 (p) 和百分比 (pct) 选项,在 Gmail 中逐步部署 DMARC。

使用政策 (p) 选项。您可以在 TXT 记录中使用 p 标记值设置和更改政策选项。您可以先从隔离政策开始,以便检查可疑邮件。然后,您可以根据已隔离邮件和每日报告中的内容逐步修改政策。

  1. p=none:监控电子邮件流量并找出每日报告中的问题,但允许所有邮件正常发送。请留意假冒邮件和未使用 DKIM 或 SPF 签名的邮件。
  2. p=quarantine:当您熟悉每日报告中的电子邮件格式时,将政策改为“隔离”。请继续查看每日报告以及被当做垃圾邮件挑出(隔离)的邮件。
  3. p=reject:当您确定您网域发送的所有邮件都已签名时,将政策改为“reject”以开始过滤垃圾邮件。请继续查看每日报告,并确认您已过滤垃圾邮件且发送给收件人的都是有效电子邮件。

使用百分比 (pct) 选项。百分比选项指定的是要对百分之多少的可疑邮件应用 DMARC 政策。可疑邮件是指未通过 DMARC 检查的邮件。百分比选项的默认值为 100%(所有可疑邮件)。请先设置百分比选项以减少邮件,然后每隔几天根据 DMARC 政策的优化情形提高百分比值。例如,先将百分比选项设置为 20,过滤掉 20% 的遭拒或隔离邮件。在下一周,将值从 20 改为 50,以过滤 50% 的邮件。

部署示例:以下示例说明了如何使用 p 和 pct 选项逐步部署 DMARC 政策。请依序使用以下值逐步更新 DMARC 政策:

  1. p=none pct=100
  2. p=quarantine pct=1
  3. p=quarantine pct=5
  4. p=quarantine pct=10
  5. p=quarantine pct=25
  6. p=quarantine pct=50
  7. p=quarantine pct=100
  8. p=reject pct=1
  9. p=reject pct=5
  10. p=reject pct=10
  11. p=reject pct=25
  12. p=reject pct=50
  13. p=reject pct=100

每日 DMARC 报告

DMARC 每日报告采用 XML 格式,包含电子邮件收发情况的相关信息。每日报告的用途如下:

  • 确认出站电子邮件来源已通过验证
  • 确认邮件是从您网域中的合法电子邮件服务器发出
  • 在新服务器上线或现有服务器存在配置问题时采取应对措施
DMARC 报告示例

以下是报告的部分内容,显示了从两个 IP 地址发送邮件的不同结果。其中一封邮件是直接发送,而另一封则是转发邮件。两封邮件都通过了 DMARC 检查。


<record>
<row>
<source_ip>207.126.144.129</source_ip>
<count>1</count>
<policy_evaluated>
<disposition>none</disposition>
</policy_evaluated>
</row>
<identities>
<header_from>stefanomail.com</header_from>
</identities>
<auth_results>
<dkim>
<domain>stefanomail.com</domain>
<result>pass</result>
<human_result></human_result>
</dkim>
<spf>
<domain>stefanomail.com</domain>
<result>pass</result>
</spf>
</auth_results>
</record>
<record>
<row>
<source_ip>207.126.144.131</source_ip>
<count>1</count>
<policy_evaluated>
<disposition>none</disposition>
<reason>
<type>forwarded</type>
<comment></comment>
</reason>
</policy_evaluated>
</row>
<identities>
<header_from>stefanomail.com</header_from>
</identities>
<auth_results>
<dkim>
<domain>stefanomail.com</domain>
<result>pass</result>
<human_result></human_result>
</dkim>
<spf>
<domain>stefanomail.com</domain>
<result>pass</result>
</spf>
</auth_results>
</record>

该内容对您有帮助吗?
您有什么改进建议?