本文主要介绍什么是DMARC,以及如何设置DMARC记录。
什么是DMARC?
DMARC是(Domain-based Message Authentication, Reporting & Conformance)的缩写,是一种邮件验证协议,用于防止电子邮件欺诈和钓鱼攻击。
为什么设置DMARC?
- 防止域名冒充:通过设置DMARC记录,域名所有者可以告知邮件接收方对于没有通过验证的邮件如何处理。这有助于阻止攻击者冒充该域名发送欺诈邮件。
- 监测和报告:DMARC提供了详细的报告机制,使域名所有者能够收集有关邮件传递和验证结果的信息。这些报告可以提供有关域名被滥用情况的实时反馈,帮助域名所有者识别和应对潜在的邮件欺诈问题。
添加方法
1、在设置DMARC记录之前,必须保证已经设置如下SPF记录(什么是SPF解析?如何添加和查询?):“v=spf1 include:spf.em.dingtalk.com -all”。
2、当设置了SPF记录后,推荐如下DMARC记录:
重要
- 解析记录值中“a***@example.net”代表需要填写一个正常收发信的同组织邮箱地址(可以为子域名邮箱)。
- 如果您的域名不在阿里云购买的,具体添加方法建议咨询域名所在服务商。
添加方法:
如下以阿里云解析DNS为例:
1、登录阿里云解析DNS,在列表中选择需要解析的域名。单击“解析设置”,进入解析设置界面。
2、在解析设置界面,单击“添加记录”,填写完成点击“确认”。
示例:
记录类型:TXT
主机记录:@
下图为添加DMARC记录示例:
关于退信攻击邮件
收到大量退信邮件或自动回复邮件,原因可能是坏人仿冒您的域名发信,导致退信邮件都退到您的邮箱。
建议采取以下措施:
1、检查spf解析是否配置正确。
2、建议您配置dmarc解析,并设置记录值的p参数为quarantine,观察返回的dmarc报告,若确认为有人伪造发信,再将p参数设置为reject。
3、报告邮件会较多,建议使用同组织的专用邮箱接收dmarc报告。
参数说明:
- p=none:放行所有来自您域名的邮件。即使邮件未通过dmarc验证。
示例:
v=DMARC1;p=none;rua=mailto:a***@example.net;ruf=mailto:a***@example.net
- p=quarantine:隔离一部分邮件,通常为放入垃圾箱。配合pct参数(默认为100),设置未通过DMARC验证的邮件中,隔离的百分比。
示例:
v=DMARC1;p=quarantine;pct=15;rua=mailto:a***@example.net;ruf=mailto:a***@example.net
- p=reject:执行严格拒绝。拒绝所有未通过身份验证的邮件。
示例:
v=DMARC1;p=reject;rua=mailto:a***@example.net;ruf=mailto:a***@example.net
rua:用于接收收信服务商的汇总报告。
ruf:用于接收收信服务商拒信的详细信息。