域名一定要做邮箱反垃圾

如果你有域名,不管使不使用域名邮箱,都要给域名设置反垃圾规则。

为什么要做反垃圾

以前不懂域名邮箱,开通之后就不管了。后来收到很多的退信通知,才意识到我的域名邮箱被伪造用于发送大量垃圾邮件。

自己的个人邮箱也常常被垃圾邮件骚扰,没想到自己也成了垃圾邮件的帮凶。

另外自己的域名邮箱被伪造用来发送大量的垃圾邮件,也担心自己域名会被各邮件服务商拉进黑名单

因此如果你也有域名,不管使不使用域名邮箱,都要给域名设置反垃圾规则。

reject

域名邮箱反垃圾规则

  • SPF

    发件人策略框架或 SPF 允许您指定被允许代表您的域发送电子邮件的所有 IP 地址和主机名。如果您没有在域中配置 SPF,您的电子邮件可能会被电子邮件接收者阻止或标记为垃圾邮件。(来自 Cloudflare)

  • DMARC

    基于域的消息身份验证报告和一致性(或称 DMARC)告诉电子邮件接收者如何处理来自您的域的未通过电子邮件安全检查的传入电子邮件。您还可以指定一个报告电子邮件地址,来接收有关您的域中传出电子邮件的定期报告。(来自 Cloudflare)

  • DKIM

    域密钥识别邮件(或称 DKIM)将公钥添加到您的 DNS 中,供电子邮件接收者验证您的传出签名电子邮件。(来自 Cloudflare)

简单来说,

  • 这些规则是告诉收信方如何识别我方的邮件。
  • SPF 规则规定哪些服务器或 IP 可以使用该域名邮箱发送邮件。
  • DKIM 可以理解为使用非对称加密对邮件进行签名。
  • DMARC 规则则是告诉收信方如何处理未通过验证的邮件。
  • 这三个规则都是通过 DNS 记录中的 TXT 记录实现

SPF

组成部分

参数含义选项
v版本,必须放在第一项一般为 spf1
include发信服务器域名可不填
ip4发信服务器 ipv4 地址可不填
ip6发信服务器 ipv6 地址可不填
all告知收信方如何处理从未列出的服务器发送的电子邮件(这个参数必须在最后)-all 表示从未列出的服务器发送的电子邮件应会被拒绝。
~all 表示从未列出的服务器发送的电子邮件应会被接受,但可能会被标记为垃圾邮件或不安全。
+all 表示收件人将接受所有电子邮件,即使验证失败。
  • SPF 记录中不能包含大写字母

示例

  • 如果不使用域名邮箱,(使用该规则会让收信方拒绝一切发信人为 "*@lixx.org" 的邮件。)

    DNS 记录主机名内容
    TXTlixx.orgv=spf1 -all
  • 以腾讯企业邮箱为例(其他邮箱可在相应的邮件服务商获取相关的规则)

    DNS 记录主机名内容
    TXTlixx.orgv=spf1 include:spf.mail.qq.com -all
  • 如果是自建邮箱服务器,应该在includeip4ip6中包含自己服务器的地址

  • 值得一骂的是,腾讯企业邮箱的文档中,使用的是~all,也就是说伪造的邮件还是会被接收。

DMARC

组成部分

参数含义选项
v版本,必须放在第一项一般为 DMARC1
p收信方服务器对未通过验证的电子邮件采取的操作。none 无操作
quarantine 软接收,可能会被标记为垃圾邮件或可疑邮件
reject 拒绝接收
aspf严格的或者宽松的 SPF 身份校验模式r 默认值,宽松
s 严格
adkim严格的或者宽松的 DKIM 身份校验模式r 默认值,宽松
s 严格
rua接受 DMARC 报告的邮箱地址,收信方会反馈与你的域名邮箱有关的发信活动可不填,建议使用专门的邮件地址

示例

  • 该记录表示,未通过 SPF 验证或 DKIM 验证的邮件均会被收信方拒收,收信方会向[email protected]发送聚合 DMARC 报告。
DNS 记录主机名内容
TXT_dmarcv=DMARC1; p=reject; adkim=s; aspf=s; rua=mailto:[email protected]

DKIM

国内邮箱对 DKIM 的支持度似乎不高,笔者也没有使用过,没有调查就没有发言权,这里就不谈了。

示例

  • 如果完全不使用域名邮箱,可以这样设置 DKIM 记录
DNS 记录主机名内容
TXT*._domainkeyv=DKIM1; p=

小结

  • 本文只是简单介绍了部分常用的 SPF 和 DMARC 规则,需要强调的是,这些并不是反垃圾规则的全部

  • 如果完全不使用域名邮箱,可以这样设置:

DNS 记录主机名内容
TXTlixx.orgv=spf1 -all
TXT*._domainkeyv=DKIM1; p=
TXT_dmarcv=DMARC1; p=reject; adkim=s; aspf=s