网易、腾讯、阿里云企业邮箱反垃圾邮件SPF记录

目录 Internet2022年11月2日

SMTP协议(Simple Mail Transfer Protocol,即简单邮件传输协议)是邮件传输的标准协议,诞生于80年代至今都在使用,这个协议存在重要的问题是发信人邮箱地址的是由发信人任意声明的,这就造成了伪造冒名的邮件,尤其现在社会上垃圾诈骗邮件横行,SPF记录就是防止假冒伪造邮件的出现。这篇文章主要介绍一下SPF记录和网易、腾讯免费域名邮箱SPF记录的设置。

SPF记录

发件人策略框架(英语:Sender Policy Framework;简称SPF;RFC4408)是一套电子邮件认证机制,可以确认电子邮件确实是由网域授权的邮件服务器寄出,防止有人伪冒身份网络钓鱼或寄出垃圾邮件。设置SPF记录能防止被别人伪造假冒我们的域名邮箱发垃圾钓鱼邮件,也很大程度减少了网络上的垃圾邮件。

它的原理是在你的域名DNS那做一条SPF记录,通常是TXT记录,这条记录包含了可受信任的邮件发送服务器的全部ip地址,接受邮件服务器如果通过DNS查询到来源服务器ip地址不在SPF记录内,就会拒收或退信,过程可以用下图解释。

SPF作用原理

SPF语法

下面是几条是标准的SPF记录

v=spf1 mx -all
v=spf1 mx mx:example.com -all
v=spf1 ip4:192.168.0.1/16 -all
v=spf1 ip4:192.168.0.1 ip4:192.168.0.2 ip4:192.168.0.3 ip4:192.168.0.4 -all
v=spf1 include:spf .example.com -all
v=spf1 这是正在使用的 SPF 的版本。
mx或a v=spf1 mx -all允许当前域名的 mx 记录对应的 IP 地址,v=spf1 mx mx:example.com -all允许当前域名和 example.com 的 mx 记录对应的 IP 地址.
ip4 允许的发信服务器 IP 地址(可以是具体的ip地址,也可以是地址段),ip4:192.168.0.1/16(后面的数字16是前缀长度)表示允许192.168.0.1和192.168.255.255之间的任何IP地址,spf记录可以包含多个ip地址(段)。
include v=spf1 include:spf .example.com -all表示允许spf.example.com域名的spf记录值
all all的四个机制

  1. +:表示通过
  2. -:不接受spf记录之外的ip发出的电子邮件;硬失败。
  3. ~:不接受spf记录之外的任何人发出的电子邮件;但允许使电子邮件“软失败”。
  4. ?:中立

官方文档中说明了7种接收邮件服务器处理办法,但是并非所有的邮件服务器都严格遵循这套规定。

结果 含义 服务器处理办法
Pass 发件 IP 是合法的 接受来信
Fail 发件 IP 是非法的 退信
Soft Fail 发件 IP 非法,但是不采取强硬措施 接受来信,但是做标记
Neutral SPF 记录中没有关于发件 IP 是否合法的信息 接受来信
None 服务器没有设定 SPF 记录 接受来信
PermError 发生了严重错误(例如 SPF 记录语法错误) 没有规定
TempError 发生了临时错误(例如 DNS 查询失败) 接受或拒绝

网易、腾讯、阿里云企业邮箱SPF记录设置

网易企业邮箱

适用于网易企业邮箱和网易免费企业邮箱。

当我们申请完了网易的企业邮箱,并做了域名MX记录后,以阿里云域名解析为例,其他域名解析商类似,打开域名后台-添加解析,弹出下面窗口,记录类型选择TXT,主机记录为空,记录值为v=spf1 include:spf.163.com -all
网易SPF记录

腾讯企业邮箱

适用于腾讯企业邮箱免费版和收费版。

当我们做完域名的MX记录后,在域名解析处添加值为v=spf1 include:spf.mail.qq.com ~all的TXT记录,以阿里云解析为例,如下图所示腾讯邮箱SPF记录

阿里云企业邮箱

阿里云针对在自己名下注册的域名都送免费的企业邮箱,在后台企业邮箱中按照提示就可以轻松完成MX解析和企业邮箱注册,需求更高可以购买收费版。

阿里云提供免费邮箱的服务,可以为自己其他地方注册的域名开通企业邮箱,具体步骤请看官方文档-免费企业邮箱申请教程。在阿里云注册的域名会自动添加MX、SPF、POP3、SMTP解析,非阿里域名就要自己添加解析了,阿里云企业邮箱SPF记录值为v=spf1 include:spf.mxhichina.com -all
阿里云邮箱SPF记录

测试SPF记录解析

使用工具:windows命令提示符

步骤:win+r 键输入 cmd 打开命令提示符,运行命令 nslookup -qt=txt xxx.com,如下图所示,如果解析成功会显示SPF记录。

SPF记录查询

参考文献:

暂无评论

发表评论