什么是邮件认证?为何重要?

企业在向客户发送邮件或发送新闻通讯时,最常见的问题是邮件落入垃圾邮件文件夹或被退回。根本原因往往是未完整配置邮件认证。

邮件认证是一套DNS标准,让接收邮件服务器能够验证邮件确实来自您的域名,而非伪造。主要包含三大标准:

  • SPF(发件人策略框架)——指定哪些邮件服务器可代表域名发送邮件
  • DKIM(域名密钥识别邮件)——对邮件进行数字签名,验证内容完整性
  • DMARC(基于域的邮件认证、报告与一致性)——设置策略并收集报告
💡 关键点:完整配置三项标准将显著提升邮件送达率,并阻止恶意行为者利用您的域名发送网络钓鱼邮件。

第一步:配置SPF记录

SPF记录是DNS TXT记录,列出哪些邮件服务器IP地址有权以您的域名发送邮件。

SPF记录格式

v=spf1 [机制] [all]
机制含义示例
ip4:允许特定IPv4ip4:203.0.113.10
include:包含其他域的SPFinclude:_spf.google.com
mx允许MX记录中的IPmx
~all软拒绝其他(推荐)~all
-all严格拒绝其他-all

AsiaGB主机SPF示例

v=spf1 mx include:spf.asiagb.com ~all
⚠️ 注意:每个域名只能有一条SPF TXT记录。多条SPF记录会导致全部失效。请将所有内容合并到一条记录中。

第二步:配置DKIM

DKIM使用公私钥加密技术对每封外发邮件进行数字签名,使收件人能够验证邮件内容在传输过程中未被篡改。

DKIM DNS记录格式

添加名为mail._domainkey.yourdomain.com的TXT记录(选择器通常为mail):

v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...
💡 提示:在DirectAdmin中,前往电子邮件→DKIM密钥生成并查看您的DKIM公钥。添加到DNS前需去除PEM头尾行,合并为单行。

第三步:配置DMARC

DMARC告知接收服务器如何处理未通过SPF或DKIM检查的邮件,并向指定地址发送报告。

DMARC记录格式

添加名为_dmarc.yourdomain.com的TXT记录:

v=DMARC1; p=none; rua=mailto:[email protected]; fo=1; pct=100
参数含义推荐值
p=失败邮件处理策略none→quarantine→reject
rua=聚合报告地址mailto:[email protected]
fo=失败报告选项1(任何失败都报告)
pct=策略应用百分比100

建议的DMARC部署策略

三阶段DMARC部署

第1个月:p=none——收集数据,不阻止任何邮件

第2-3个月:p=quarantine; pct=25——对25%流量测试

第4个月+:p=reject; pct=100——完全阻止未认证邮件

完整DNS记录示例

记录名称类型值
@TXTv=spf1 mx include:spf.asiagb.com ~all
mail._domainkeyTXTv=DKIM1; k=rsa; p=[公钥]
_dmarcTXTv=DMARC1; p=none; rua=mailto:[email protected]

测试与验证

免费测试工具

  • MXToolbox——一站式测试SPF、DKIM、DMARC
  • mail-tester.com——发送测试邮件获取投递率评分
  • Google Postmaster Tools——监控Gmail的投递情况
  • DMARC Analyzer——分析DMARC聚合报告

命令行测试

# 检查SPF
dig TXT yourdomain.com | grep "v=spf1"

# 检查DKIM
dig TXT mail._domainkey.yourdomain.com

# 检查DMARC
dig TXT _dmarc.yourdomain.com

常见问题排查

配置后邮件仍进垃圾箱

  • 验证SPF lookup次数不超过10次(DNS查询限制)
  • 确认DNS中的DKIM公钥与服务器私钥匹配
  • 通过MXToolbox黑名单检查核实服务器IP是否被列入黑名单

SPF和DKIM通过但DMARC仍然失败

DMARC需要对齐——From头中的域名必须与SPF或DKIM使用的域名对齐。邮件转发可能破坏对齐。

最佳实践

  • 使用2048位或更大的DKIM密钥(1024位已被认为不安全)
  • 每6-12个月轮换一次DKIM密钥
  • 先将DMARC设置为p=none监控2-4周再执行
  • 定期检查DMARC聚合报告,识别未授权发件人
  • 切勿在SPF中使用+all(允许任何人以您的域名发送邮件)
  • 不用于发送邮件的子域名设置v=spf1 -all和p=reject

开始使用可靠的主机和企业邮件服务

AsiaGB主机通过DirectAdmin支持完整的SPF、DKIM和DMARC配置。SSD存储,99%正常运行时间保证。

查看主机套餐

常见问题解答

什么是SPF?
SPF(发件人策略框架)是一种DNS TXT记录,用于指定哪些邮件服务器可以代表您的域名发送电子邮件,从而防止邮件伪造。
DKIM与SPF有何不同?
DKIM使用公私钥加密技术对电子邮件进行数字签名,使收件人可以验证邮件在传输过程中是否被篡改。而SPF只检查发送服务器是否经过授权。
什么是DMARC,为什么需要它?
DMARC规定了对未通过SPF或DKIM检查的邮件的处理方式,并提供报告功能,让您了解谁在使用您的域名发送邮件。
DNS配置需要多长时间生效?
DNS传播通常需要24-48小时,但往往更快。配置后可以立即使用MXToolbox或mail-tester.com进行测试。
配置错误会发生什么?
SPF配置错误可能导致邮件被拒绝;DKIM配置错误可能导致邮件被标记为垃圾邮件。建议先将DMARC设置为p=none进行监控,再逐步加严策略。