什么是 DMARC 记录以及如何创建一个案例

什么是 DMARC 记录?

DMARC 记录是定义 DMARC 规则集的 TXT 记录。简而言之,DMARC 记录指示电子邮件接收者如果由于电子邮件身份验证问题而无法传递邮件,应该怎么做。

使用 DMARC 记录,您可以控制邮件服务器是否应拒绝、隔离或对未通过身份验证的邮件执行任何操作。

创建 DMARC 记录很重要,因为它可以帮助您对抗源自未经授权的电子邮件域的网络钓鱼、欺骗和 CEO 欺诈等网络威胁。这就是我们强烈建议创建 DMARC 记录以确保更好的电子邮件安全性的原因。

DMARC 记录示例

一个典型的 DMARC 记录至少包含三个重要的组件(或标签-值对)。考虑这个示例记录:

v=DMARC1; p=reject; rua=mailto:dmarc@yourdomain.com

在这里,我们有三个标签:v、 prua ,它们的值分别为DMARC1nonemailto:dmarc@yourdomain.com

v标签指定 DMARC 的版本,p标签是策略(或在电子邮件未通过 DMARC 检查时执行的操作),rua 标签是您希望接收 DMARC 汇总报告的电子邮件地址。

在上面的示例中,p标签的值为reject。换句话说,这里定义的策略 是当消息认证失败时拒绝消息。以下是 3 种不同的 DMARC 政策的含义:

  • 无: 对未通过 DMARC 的邮件不采取任何措施,但仍会向您发送汇总报告,以便您监控电子邮件的情况。
  • 隔离: 未通过 DMARC 检查的邮件被放入接收者的垃圾文件夹中。
  • 拒绝: 所有未通过身份验证的电子邮件都将被完全拒绝,永远不会到达您的收件人。

您可以使用各种其他选项标签,例如pctruf。但是,为简单起见,我们不会在示例中包含这些内容。您仍然可以只使用上面提到的 3 个标签来设置您的 DMARC 记录。

如果您使用WP Mail SMTP处理您的 WordPress 电子邮件,它会告诉您 DMARC 是否未在您的域上正确设置。您可能还会看到“未找到 DMARC 记录”之类的错误。

以下步骤将帮助您解决问题。

如何添加 DMARC 记录

让我们逐步完成在您的域上设置 DMARC 记录的过程。

1. 使用 DMARC 分析器检查您的 DNS

如果您不确定是否在您的网站上设置了 DMARC,您可以使用 DMARC 检查器(如MXToolbox)来扫描您的 DNS 记录。

在字段中输入您的域名,然后单击 DMARC Lookup

DMARC 查找

如果您没有设置 DMARC,DMARC 分析器将显示失败消息。

DMARC 记录检查失败消息

接下来让我们登录并添加该 DMARC 记录。

2. 使用我们的示例添加 DMARC 记录

现在我们将为您的域编辑 DNS 并添加 DMARC 记录。

DNS 是一组指令,告诉服务器在哪里可以找到您的站点内容、电子邮件邮箱等。要编辑您的 DNS,您(或域所有者)需要登录为您的域处理 DNS 区域的提供商。

如果您不确定它在哪里,您可以尝试:

  • 您的网络托管控制面板:如果您购买了您的域名和托管作为一个包,您的 DNS 可能由您的网络托管公司处理。您需要登录主机控制面板并查找名为 DNS 或 DNS 区域的菜单。
  • 您的 DNS 注册商:如果您自己购买了域,则 DNS 可能由您购买它的公司管理。
  • 您的 CDN 提供商:如果您使用 Cloudflare 之类的 CDN,您的 DNS 记录将托管在 CDN 设置中。

在此示例中,我们将向您展示如何在 Cloudflare 中创建 DMARC 记录。

在 Cloudflare 中打开 DNS

其他域名注册商或主机的步骤非常相似,包括:

打开 DNS 时,请仔细检查您是否尚未设置任何 DMARC 记录。

您的 DNS 中不能有超过 1 条 DMARC 记录。但不要担心:我们的示例记录将涵盖您域下的所有子域,以及您发送邮件的所有电子邮件地址。

假设您没有,让我们继续添加 DMARC TXT 记录。

3. 复制并粘贴此 DMARC 记录

使用此示例很容易添加 DMARC 记录。无需使用 DMARC 生成器。

在注册商的 DNS 记录屏幕上,单击添加记录以创建 DMARC 记录。我们将在此示例中使用Cloudflare 。

在 Cloudflare 中添加 DMARC 记录

DMARC 记录是以 . 开头的 TXT 记录_dmarc。因此,在类型下拉列表中,选择TXT

为 DMARC 创建新的 TXT 记录

名称字段中,_dmarc.在末尾键入句点(点)。一些主机不需要该句点,因此他们会删除它或显示错误。在这种情况下,您可以在没有句点的情况下安全使用_dmarc

在 DNS 记录的大字段中,粘贴此 DMARC 记录示例。

v=DMARC1; p=none; fo=1; rua=mailto:me@example.com

以下是此规则的作用:

  • 我们使用它是p=none因为它是限制最少的设置。如果您的 DNS 出现问题,您仍会收到电子邮件报告,但这不太可能影响您自己的电子邮件的发送。如果您开始收到可疑的 DMARC 报告,您可以将这部分规则更改为p=quarantine.
  • 请务必更改rua=mailto:地址。理想情况下,它应该设置为您的邮件服务在其文档中提供的电子邮件地址。如果它没有提供,您可以使用您自己域中的电子邮件地址。
  • 基本而言,TTL(生存时间)设置就像您的 DNS 的到期日期。我们建议将TTL设置保留为Auto,通常为 4 小时。该设置并不重要,因此您可以安全地选择 24 小时或 14400(如果这是您唯一的选项)。

一些提供商可能会要求提供对齐规则。可以排除它,因为 DMARC 不需要它来工作。

所以在粘贴规则之后,这是我们完成的 DMARC 记录:

Cloudflare 中的新 DMARC 记录

保存新的 DMARC 规则以将新记录添加到 DNS。

如果您的 DNS 中已有 DMARC 规则,请仔细检查格式。注意名称字段;如果您@在名称字段中使用或您的域名,它将不起作用。

等待您的 DMARC 记录传播

每当您对站点的 DNS 进行更改时,您最多需要等待 48 小时才能使更改生效。如果您使用 Cloudflare,通常会发现更改会在几分钟内发生。

更改传播后,返回到基于 Web 的 DMARC 检查器,例如 MXToolbox。使用其 DMARC 工具再次检查。

您的 DMARC 规则应显示在绿色栏中,以便您知道它正在工作。

MXToolbox 中的 DMARC 规则成功

您还可以使用WP Mail SMTP从 WordPress 发送另一封测试电子邮件。这将自动对您的 DNS 运行新检查并查找您的 DMARC 记录。

如果您正确添加了所有内容,您现在将看到这样的传递消息:

在 WP Mail SMTP 中创建 DMARC 记录

就是这样!现在,您向 DNS 添加了 DMARC 记录。

0 0 投票数
文章评分
订阅评论
提醒

2 评论
内联反馈
查看所有评论
rick
2022-11-03 16:25

感谢作者大大的教程,很详细。有时间写一篇Dmarc,DKIM,SPF的关系吧?我今天冷不丁看了一眼Dmarc报告,有点问题然后就研究这个了。但是云里雾里的,您的这篇文章让我看懂了 Dmarc,但是DKIM就搞不太懂了。

rick
2022-11-03 16:28

我的DMARC报告显示我的DKIM验证是失败的,实际上我也没配置DKIM,因为我用的阿里云邮箱开DKIM的要求很高,要用户规模达到500。。。我的DMARC策略选择的是quarantine,那我就比较疑惑这个DMARC中的DKIM验证不通过,会不会影响对方接收我的邮件?