DMARC 介绍
DMARC 是什么?
DMARC 是 “Domain-based Message Authentication, Reporting & Conformance” 的缩写。它用来检查一封电邮是否来自所声称的发送者。DMARC 建立在广泛使用的 SPF 和 DKIM 协议上, 并且添加了域名对齐检查和报告发送功能。这样可以改善域名免受钓鱼攻击的保护。
这是来自 dmarc.org 的示意图:

为什么 DMARC 如此重要?
根据 dmarc.org 的说法:
随着社交网络和电子商务的繁荣,垃圾邮件发送者和钓鱼攻击发起者基于利益的原因,想要入侵用户的账户,破解用户的信用卡等。Email 的相对容易攻击的特性备受罪犯们的青睐。只是简单地把企业的 logo 嵌入到 email 中,就能获取用户的信任。
用户很难辨别一封假的 email,邮件提供商也很难判断哪些邮件有可能会伤害用户。邮件发送者基本上对邮件认证的问题一无所知,因为他们缺少合理的反馈机制。那些尝试部署 SPF 和 DKIM 的企业的进展非常慢,因为没有监督进度和除错的机制。
DMARC 解决了这些问题。它帮助 email 发送者和接收者来共同保护 email,避免了昂贵的入侵损失。
DMARC 记录是什么?
DMARC 记录作为 TXT 资源记录发布到 DNS 中。它指示当验证失败时,应当如何处理收到的 email。
考察以下的发布在域名 “sender.exampledomain.com” 上的 DMARC 记录:
v=DMARC1;p=reject;pct=100;rua=mailto:postmaster@exampledomain.com
在这个例子中,发送者请求接收者完全拒绝验证未通过的 email,并且发送相关报告至 postmaster@exampledomain.com。如果发送者是在测试配置的话,"reject" 有可能被替换成 "quarantine",意味着验证未通过的 email将被隔离。DMARC 记录使用可扩展的 “标签-值” 语法。
DMARC 记录标签是什么?
这是一个典型的 DMARC 记录:
v=DMARC1; p=none; ri=3600; rua=mailto:5b06a240321f1@ag.dmarcly.com; ruf=mailto:5b06a240321f1@fo.dmarcly.com; sp=none; adkim=s; aspf=s; fo=0:1:d:s;
它由多个标签组成。这些标签告诉邮件服务提供商应该如何发送 DMARC 报告。我们在下面逐一解释这些标签。
v 是 DMARC 协议版本。它的值必须是 DMARC1。
p 是策略。该策略将被应用到验证失败的邮件上。可以设置成 'none', 'quarantine', 或者 'reject'。'none' 用来收集 DMARC 报告。'quarantine' 用来隔离可疑邮件。'reject' 拒收可疑邮件。
ri 是以秒为单位的报告发送间隔。
rua 是一系列用来接受聚合报告的电邮。
ruf 是一系列用来接受失败报告的电邮。
sp 是子域名策略。
adkim 制定 DKIM 的对齐策略。
aspf 制定 SPF 的对齐策略。
fo 是法庭选项。
rf 制定失败报告的格式。
pct 对失败邮件应用策略的百分比。
DMARC 策略是什么?
DMARC 策略是在 DMARC 记录中制定的 p 标签。它指示邮件服务提供商应该如何处理验证失败的邮件。
DMARC 策略可以取三个值中的一个:none (monitor), quarantine 和 reject。
– none: 邮件提供商对验证失败邮件不采取任何处理。这个模式用来收集 DMARC 报告。
– quarantine: 邮件提供商把验证失败邮件放到垃圾邮件文件夹。
– reject: 邮件提供商拒收验证失败邮件。
发布 DMARC 记录
在发布之前,你需要创建一条 DMARC 记录。接下来我们登陆 DMARCLY 后台 来创建一条 DMARC 记录。
登录成功后,点击 DNS Records/DMARC Setup,页面看起来像这样:

生成的 DMARC 记录出现在上面的圈选区域。
接下来,你需要把记录发布到 DNS 中。以下是步骤:
登录到你的 DNS 管理后台;
选择需要发布 DMARC 记录的域名;
创建一条 TXT 记录:
Type: TXT Host: _dmarc TXT Value: (DMARC record generated above) TTL: 1 hour
如果你在 GoDaddy's DNS 管理后台发布的话,看起来是这样的:

如果你是用其他的域名服务的话,界面应该类似。
保存更改。现在你已经在域名 yourdomain.com 上面成功发布 DMARC 记录了。
本文翻译自 DMARCLY 的 blog:Getting Started with DMARC,已经经过作者的授权。
DMARC 介绍的更多相关文章
- CSS3 background-image背景图片相关介绍
这里将会介绍如何通过background-image设置背景图片,以及背景图片的平铺.拉伸.偏移.设置大小等操作. 1. 背景图片样式分类 CSS中设置元素背景图片及其背景图片样式的属性主要以下几个: ...
- MySQL高级知识- MySQL的架构介绍
[TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...
- Windows Server 2012 NIC Teaming介绍及注意事项
Windows Server 2012 NIC Teaming介绍及注意事项 转载自:http://www.it165.net/os/html/201303/4799.html Windows Ser ...
- Linux下服务器端开发流程及相关工具介绍(C++)
去年刚毕业来公司后,做为新人,发现很多东西都没有文档,各种工具和地址都是口口相传的,而且很多时候都是不知道有哪些工具可以使用,所以当时就想把自己接触到的这些东西记录下来,为后来者提供参考,相当于一个路 ...
- JavaScript var关键字、变量的状态、异常处理、命名规范等介绍
本篇主要介绍var关键字.变量的undefined和null状态.异常处理.命名规范. 目录 1. var 关键字:介绍var关键字的使用. 2. 变量的状态:介绍变量的未定义.已定义未赋值.已定义已 ...
- HTML DOM 介绍
本篇主要介绍DOM内容.DOM 节点.节点属性以及获取HTML元素的方法. 目录 1. 介绍 DOM:介绍DOM,以及对DOM分类和功能的说明. 2. DOM 节点:介绍DOM节点分类和节点层次. 3 ...
- HTML 事件(一) 事件的介绍
本篇主要介绍HTML中的事件知识:事件相关术语.DOM事件规范.事件对象. 其他事件文章 1. HTML 事件(一) 事件的介绍 2. HTML 事件(二) 事件的注册与注销 3. HTML 事件(三 ...
- HTML5 介绍
本篇主要介绍HTML5规范的内容和页面上的架构变动. 目录 1. HTML5介绍 1.1 介绍 1.2 内容 1.3 浏览器支持情况 2. 创建HTML5页面 2.1 <!DOCTYPE> ...
- ExtJS 4.2 介绍
本篇介绍ExtJS相关知识,是以ExtJS4.2.1版本为基础进行说明,包括:ExtJS的特点.MVC模式.4.2.1GPL版本资源的下载和说明以及4种主题的演示. 目录 1. 介绍 1.1 说明 1 ...
随机推荐
- nginx配置https转发的一个例子
server { listen ; #https默认端口不是80,而是443 server_name www.test.com; ssl on; ssl_certificate cert/.pem; ...
- word-spacing和letter-spacing区别
word-spacing:单词与单词间的间距 letter-spacing:字母与字母间的间距
- PHP 设计模式--序言
面向对象是PHP5之后增加的功能,是PHP走向现代语言的一个标志. 在过程式设计时代,PHP以学习成本低.入门快的特点赢得很多WEB开发者的青睐,但同时也限制了PHP的发展. 借鉴Java和C++之后 ...
- BZOJ 2626: JZPFAR KDtree + 堆
Code: #include<bits/stdc++.h> #define maxn 200000 #define inf 1000000000000000 #define mid ((l ...
- 获取webconfig配置文件内容
string ServerUrl= ConfigurationManager.AppSettings["ServerUrl"].ToString(); web.config中的配置 ...
- PostgreSQL使用总结
最近项目用到了PostgreSQL数据库,网上一堆教程,这里自己整理一下做个笔记: 1,下载安装,我这边安装在Windows7,在这里找到大象一样的标志: 2,双击打开,这里的话按流程直接走: 3,这 ...
- Windows环境下flask+Apache+mod_wsgi部署及爬坑
文章目录 安装python Windows 环境使用virtualenv和virtualenvwrapper 安装mod_wsgi 安装nginx 安装Apache 遇到的坑 安装Apache遇到的坑 ...
- linux 头文件和库文件的设置
GCC/G++会查找系统默认的include和link的路径,以及自己在编译命令中指定的路径.自己指定的路径就不说了,这里说明一下系统自动搜索的路径. [1]include头文件路径 除了默认的/us ...
- [POJ1226]Substrings(后缀数组)
传送门 给定 n 个字符串,求出现或反转后出现在每个字符串中的最长子串. 算法分析: 这题不同的地方在于要判断是否在反转后的字符串中出现.其实这并没有加大题目的难度. 只需要先将每个字符串都反过来写一 ...
- pyenv-virtualenv环境搭建
搞了个新服务器,搭个python环境 安装pyenv 直接上懒人脚本,不怕麻烦想手动装的就麻烦您自己查吧~ curl -L https://raw.githubusercontent.com/yyuu ...