自定义域名邮箱DNS安全配置完整手册(防钓鱼/防伪造/提送达率)
自定义域名邮箱DNS安全配置完整手册(防钓鱼/防伪造/提送达率)
LynxFrost一、目标
搭建企业域名邮箱,防止域名被伪造发送钓鱼邮件,同时提升邮件送达率,降低被反垃圾系统误判为垃圾邮件的概率。
二、阶段 1:基础邮箱部署(前置)
在企业邮箱服务商(腾讯 / 阿里企业邮等)创建域名邮箱,绑定域名。 配置 MX 记录:指定接收邮件的服务器,实现域名收信,是邮箱工作的基础。
MX 只负责接收邮件,不做发件身份校验,没有防伪造能力。
DNS 避坑:根域名
@不能配置 CNAME。DNS 协议规定:如果根域名设置 CNAME,则同域名下 MX、TXT、A 记录全部失效,导致收邮件失败。子域名不受此限制,可以同时配置 CNAME+MX。 根域名网站解析需求请使用 A 记录,不要使用 CNAME。
三、阶段 2:DNS 域名身份认证配置(核心,防域名伪造)
作用:给收件服务器提供身份核验规则,证明这封邮件是否是域名所有者授权发出。一共 3 项核心 TXT 记录。
- SPF(发件服务器 IP 授权) 功能:声明哪些服务器 IP、服务商有权使用本域名发送邮件。
- DKIM(邮件电子签名) 功能:发信服务器用私钥对邮件头部 + 正文签名;收件服务器使用 DNS 里的公钥校验邮件,确认邮件传输途中没有被篡改。
- DMARC(策略与报告,SPF/DKIM 的上层规则) 功能:告诉收件服务器:SPF/DKIM 校验失败时如何处理邮件,同时收集全网仿冒邮件报告。
1. MX 记录(Mail Exchange,邮件交换记录)【收邮件必备】
类型:MX 记录(不是 TXT!)
作用: 告诉全世界:接收发给域名邮箱的邮件,应该转发到哪一台邮件服务器。 简单理解:别人给你发邮件,MX 就是收件地址,找到负责收信的邮局。没有 MX 记录,别人根本无法给你的域名邮箱发送邮件。
字段说明
- 优先级:数字越小优先级越高。可以配置多条 MX 做容灾,主 MX 挂掉自动走备用 MX。
- 值:邮箱服务商提供的收信服务器域名(例如腾讯企业邮
mx.qq.com)。
要点
- MX 只负责收邮件,不负责发邮件身份校验、防伪造。就算 MX 配置正常,别人依然可以伪造你的域名发钓鱼邮件。
- MX 记录不需要和发信服务器 IP 绑定;企业 SaaS 邮箱(腾讯 / 阿里邮)MX 固定由服务商提供。
- MX 记录和 SPF 不要混淆:MX = 收信服务器;SPF = 允许哪些服务器代你的域名外发邮件。
2. SPF 记录(Sender Policy Framework,发件人策略框架)【TXT 记录,主机名 @】
类型:TXT 记录,主机填写根域名 @
作用: 由域名所有者声明:哪些 IP、服务器、服务商,有权使用这个域名向外发送邮件。 收件服务器收到邮件后,取出邮件的发送服务器 IP,查询你的 SPF 记录,判断这个 IP 是否是你授权的发信源。
- 授权 IP:
spf=pass - 未授权 IP:
~all→ softfail(软失败,标记可疑,不直接拒收);-all→ hardfail(硬失败,直接判定失败)
记录示例 v=spf1 include:spf.mail.qq.com ~all
v=spf1:固定版本标识,SPF 记录必须以此开头include:spf.mail.qq.com:引用腾讯官方的发信 IP 列表,代表腾讯企业邮所有服务器都允许使用你的域名发信~all:所有不在上面列表里的 IP,全部标记为软失败(测试阶段推荐)-all:所有不在列表里的 IP,直接硬失败(稳定上线后推荐)
核心优缺点 & 笔记要点
优点:校验发送服务器 IP,快速拦截一部分伪造邮件源。
缺点:
- SPF 只校验 IP;邮件经过转发服务器后,发送 IP 会变化,SPF 容易失效。
- 无法检测邮件内容是否被篡改。
- 单独 SPF 不能阻止伪造,必须搭配 DKIM+DMARC。
硬性限制:一个域名只能有 1 条 SPF 类型 TXT 记录;多条 include 引用会累加,总长度尽量不要超过 255 字符,超长会失效。
3. DKIM 记录(DomainKeys Identified Mail,域名密钥识别邮件)【TXT 记录,主机名是选择器._domainkey】
类型:TXT 记录,主机名格式 xxx._domainkey(xxx 叫做选择器 selector,由邮箱服务商生成)
作用: 实现邮件内容电子签名。 发信企业邮箱服务器持有私钥:邮件发出时,用私钥对邮件头部 + 正文生成签名,附加在邮件头部。 收件服务器收到邮件后,查询 DNS 里 DKIM 记录存放的公钥,使用公钥校验签名:
- 校验成功:
dkim=pass,证明邮件在传输过程没有被篡改,签名是来自你的域名服务商。 - 校验失败:
dkim=fail,邮件内容被修改,或者签名伪造。
通俗比喻: SPF:检查是谁(哪个服务器 IP)寄来的信; DKIM:检查信件封口的防伪钢印,信件中途有没有被拆开篡改。
记录示例 v=DKIM1; k=rsa; p=很长一串公钥字符串
v=DKIM1:DKIM 版本标识k=rsa:加密算法,固定 rsap=:公钥字符串,私钥保存在邮箱服务商后台,绝对不能泄露
核心要点
- DKIM 和 IP 无关!邮件转发后 IP 变了,只要签名没被破坏,DKIM 依然可以校验成功。弥补 SPF 的短板。
- DKIM 有选择器(selector):你可以配置多条 DKIM 记录(不同选择器),用于密钥轮换。
- DKIM 单独使用,只能校验签名,不能定义哪些服务器允许发邮件;必须配合 SPF+DMARC。
DKIM_VALID_AU:代表 DKIM 签名域名和邮件 From 发件人域名一致,也就是 DMARC 需要的域名对齐。
4. DMARC 记录(Domain-based Message Authentication, Reporting and Conformance)【TXT 记录,主机名固定 _dmarc】
类型:TXT 记录,主机名必须填写_dmarc,不能写 @!
作用: SPF、DKIM 只是两个独立的校验规则。DMARC 是上层统一决策规则 + 仿冒邮件报告收集机制。 它告诉全网收件服务器两件事:
- 如果这封邮件 SPF 校验失败 或者 DKIM 校验失败,该怎么处理这封伪造邮件(策略 p);
- 把所有域名仿冒、校验失败邮件的统计报告,发送到我指定邮箱(rua/ruf)。
DMARC 通过的必要条件:SPF pass 并且 SPF 域名对齐 或者 DKIM pass 并且 DKIM 域名对齐,二者满足其一即可dmarc=pass。
重点:就算 SPF/DKIM 都 pass,如果域名不对齐,DMARC 依然判定失败。
记录示例 v=DMARC1; p=none; sp=none; rua=mailto:xxx@xxx.com; ruf=mailto:xxx@xxx.com; adkim=s; aspf=s; pct=100
字段逐项解释:
v=DMARC1:DMARC 版本固定标识p=主域名策略p=none:监控模式,不拦截任何邮件,只收集报告p=quarantine:隔离模式,校验失败邮件扔进垃圾箱p=reject:拒绝模式,校验失败邮件直接拒收(最高防护,稳定后启用)
sp=子域名策略(xxx.xxx.com这类子域名)sp=none:子域名不执行拦截策略sp=quarantine/reject:给子域名启用对应的防护,防止攻击者使用子域名伪造邮件
rua=mailto:xxx:聚合汇总报告,每日 / 定期收到一份统计报表,查看哪些 IP 尝试伪造你的域名(日常看这个)ruf=mailto:xxx:失败详情报告,每一封 DMARC 失败邮件都会推送原始邮件样本,测试阶段用,流量大会爆炸adkim=s:DKIM 对齐模式。sstrict 严格对齐:DKIM 签名域名必须和 From 发件域名完全一致;rrelaxed 宽松对齐,允许子域名匹配aspf=s:SPF 对齐模式。s严格对齐;r宽松对齐pct=100:对 100% 的邮件应用 DMARC 策略。灰度上线可以设置pct=10,只对 10% 邮件执行策略。
DMARC 上线核心原则 严禁直接一步设置p=reject,容易误杀正常业务邮件! 阶段 1:p=none 持续至少 30 天,查看 rua 报告,确认所有合法发信源全部 DMARC pass。 阶段 2:无异常 → p=quarantine,伪造邮件丢垃圾箱,继续观察。 阶段 3:长期稳定 → p=reject,直接拒收伪造邮件,同时 SPF 改为-all。
5. BIMI 记录(Brand Indicators for Message Identification)【可选 TXT 记录,非安全配置】
作用: 和邮件安全无关!仅用于支持 BIMI 的邮箱客户端(Gmail 等)在收件箱列表展示你的企业 Logo。国内邮箱(QQ、企业微信邮箱)不支持。 启用前提:DMARC 必须是p=quarantine或p=reject;还需要合规 SVG 商标文件 + VMC 商标证书(付费)。
结论:企业国内业务邮箱,直接忽略这条记录。
| 记录 | 类型 | 核心作用 | 解决的问题 |
|---|---|---|---|
| MX | MX | 指定接收邮件服务器 | 别人可以给你的域名邮箱发邮件 |
| SPF | TXT(@) | 授权允许外发邮件的服务器 IP | 校验发信服务器 IP 是否合法 |
| DKIM | TXT (选择器._domainkey) | 邮件电子签名,校验邮件是否被篡改 | 防止邮件传输途中被修改,不受转发 IP 变化影响 |
| DMARC | TXT(_dmarc) | 统一 SPF/DKIM 决策规则,收集仿冒报告 | 定义伪造邮件如何处置,要求域名对齐,是防钓鱼伪造的顶层规则 |
| BIMI | TXT | 收件箱展示 Logo | 品牌展示,无安全作用 |


