电子邮件身份验证

电子邮件和安全
用于验证电子邮件真正来自声称的发件人的技术标准和协议。
← 返回词汇表

什么是电子邮件身份验证?

电子邮件身份验证是一组用于验证邮件是否确实来自其声称域名的技术标准和协议。这些机制通过 DNS 记录和加密签名,让收件方邮件服务器能够验证发件人身份,从而帮助防止邮件伪造、网络钓鱼和垃圾邮件。

电子邮件身份验证的三大支柱

SPF(发件人策略框架)

规定哪些服务器获准代表你的域名发送邮件。

SPF 的工作方式:

1. 域名在 DNS 中发布 SPF 记录

2. 收件服务器检查发件人的 IP

3. 将该 IP 与授权列表进行比对

4. 返回通过、失败或软失败结果

SPF 记录示例:
v=spf1 ip4:192.168.1.0/24 include:_spf.google.com -all

DKIM(域名密钥识别邮件)

通过加密方式为邮件签名,验证邮件的完整性和真实性。

DKIM 的工作方式:

1. 发送服务器使用私钥为邮件签名

2. 将公钥发布到 DNS

3. 收件服务器获取公钥

4. 对照邮件内容验证签名

DKIM DNS 记录:
selector._domainkey.example.com. TXT "v=DKIM1; k=rsa; p=MIGfMA0..."

DMARC(基于域名的消息身份验证)

作为策略层,告诉收件服务器应如何处理身份验证失败的邮件。

DMARC 记录示例:
_dmarc.example.com. TXT "v=DMARC1; p=reject; rua=mailto:[email protected]"

身份验证流程

Email Sent → SPF Check → DKIM Check → DMARC Policy

↓ ↓ ↓

Pass/Fail Pass/Fail Deliver/Quarantine/Reject

身份验证结果

结果SPFDKIMDMARC
passIP 已授权签名有效已对齐且通过
failIP 未授权签名无效违反策略
softfailIP 存疑--
none没有记录没有签名没有策略

为什么身份验证很重要

对发件人

对收件人

实施最佳实践

SPF

1. 先为邮件服务商添加 include 语句

2. 为邮件服务器添加明确的 IP

3. 测试期间使用 ~all,确认无误后使用 -all

4. 将 DNS 查询次数控制在 10 次以内

DKIM

1. 至少生成 2048 位密钥

2. 定期轮换密钥

3. 为每项服务使用唯一 selector

4. 监控签名失败情况

DMARC

1. 从 p=none 开始监控

2. 查看报告以识别问题

3. 逐步改用 p=quarantine

4. 确认无误后实施 p=reject

常见身份验证问题

问题原因解决方案
SPF 失败使用了错误的发件 IP更新 SPF 记录
DKIM 失败密钥不匹配重新生成密钥
DMARC 失败对齐问题检查 From 与信封域名的对齐

电子邮件身份验证对于保护域名声誉、确保邮件到达收件箱至关重要。

将知识付诸实践

使用 DomScan 的 API 检查域名可用性、健康状态等。