无忧技术网
无忧技术网 - RSS订阅 

什么是SPF记录?如何设置、检测SPF记录?


作者:[佚名] - 发布:2010-4-29 21:42:48 - 来源:无忧技术网
什么是SPF记录?
定义:
SPF,Sender Policy Framework  (发件人策略框架)的缩写,是一种以 IP 地址认证电子邮件发件人身份的技术,是非常高效的垃圾邮件解决方案。它是一种 TXT 类型的 DNS 记录。

作用:
可以避免伪造地址的垃圾邮件,避免有其他人伪造我的域名来投递。提高发送外域邮箱的成功率。

原理:
SPF规则规定了一个域名下的邮件必须通过哪些smtp服务器来发送。一个域名可以为自己创建一个txt解析记录,在这个解析记录里面是这个域名下所有的smtp服务器的ip地址。

接收邮件方会首先检查对方邮箱后缀域名的SPF记录,来确定发件人的smtp服务器的IP地址是否被包含在SPF记录里面,如果在,就认为是一封正确的邮件,否则会认为是一封伪造的邮件进行退回。

普通 SMTP 可以让任何计算机发送来自任何人的电子邮件。因此,垃圾邮件发件人就能轻易发送具有假冒"发件人:"地址的电子邮件。SPF 可以让域所有者使用特殊格式的 DNS TXT 记录来指定哪些计算机/主机有权为各自所在的域传送电子邮件,从而使垃圾邮件发件人不容易假冒"发件人:"地址。
 
例如,如果您拥有 example.com 域,则可以指定哪些主机有权发送来自 user@example.com 的电子邮件。然后,您的收件人的服务器会通过检查 SPF 记录来识别邮件的来源。
 
查询txt记录的方法?
nslookup
> set q=txt

> net263.com
Server:  gjjdial.bta.net.cn
Address:  202.106.195.68
 
Non-authoritative answer:
net263.com      text =
        "v=spf1 include:spf.263xmail.com ~all"

查询txt记录下对应的ip的方法
查询 include 后面字段的域名即可
nslookup
> set q=txt

> spf.263xmail.com
Server:  gjjdial.bta.net.cn
Address:  202.106.195.68
 
Non-authoritative answer:
spf.263xmail.com        text =
        "v=spf1 ip4:211.150.66.0/24 ip4:211.150.67.0/24 ip4:211.150.96.0/24 ip4:211.150.100.0/24 ip4:211.157.129.0/24
ip4:211.150.64.0/24 ip4:211.150.122.0/24 ip4:74.86.11.0/28 ip4:63.217.87.0/28 ip4:211.157.224.0/24 ~all"

如何设置域名邮箱的SPF记录呢?
为了提升域名邮箱发送外域(@qq.com以外的邮箱)邮件的成功率,建议您给自己的域名设置一条TXT记录来避免这种情况。
TXT记录值为:v=spf1 include:spf.mail.qq.com ~all
附263企邮箱的TXT记录值为:v=spf1 include:spf.263xmail.com ~all
如图:万网的设置页面
1.从diy.hichina.com处登录域名管理系统;
2.在TXT(正文字串)处设置一条TXT记录,如下:
注:易名中国,中资源目前不支持设置TXT记录

如何生成SPF记录?
登陆http://www.openspf.org/在里面输入你的域名,点击Begin,然后会自动得到你域名的一些相关信息。
a 你域名的A记录,一般选择yes,因为他有可能发出邮件。
mx 一般也是yes,MX服务器会有退信等。
ptr 选择no,官方建议的。
a:有没有其他的二级域名?比如:mail.abc.com和www不在一台server上,则填入mail.abc.com。否则清空。
mx: 一般不会再有其他的mx记录了。
ip4: 你还有没有其他的ip发信?可能你的smtp服务器是独立出来的,那么就填入你的IP地址或者网段。
include: 如果有可能通过一个isp来发信,这个有自己的SPF记录,则填入这个isp的域名,比如:dgcgw.com
~all: 意思是除了上面的,其他的都不认可。当然是yes了。
好了,点击Continue…..
自动生成了一条SPF记录,比如abc.com的是
v=spf1 a mx ~all
并且在下面告诉你如何在你的bind里面添加一条
abc.com. IN TXT “v=spf1 a mx ~all”
加入你的bind,然后ndc reload即可。
检查一下:
dig -t txt extmail.org
 
责任编辑:liqwei
打印本页】【关闭本页】【返回列表
·上一篇:过期域名多长时间才能重新注册
·下一篇:Http协议请求方法功能介绍
 文章评分
  • current rating
-5 -4 -3 -2 -1 0 +1 +2 +3 +4 +5
 相关文章
 相关评论
 站点最新文章 更多>> 
·[瀚海拾遗]国际狮子会
·[JS/CSS/HTML]Vue资源整理
·[程序综合]RESTful API最佳实践
·[PHP]PHP资源整理
·[管理与测试]Git资源整理
·[经典影音]火星救援
·[程序综合]词性标注集(北大版)
·[Java/JSP]泛型
·[协议规范]5类IP地址如何划分?
·[至理名言]曾国藩:利可共而不可独,谋可寡…
 站点浏览最多 更多>> 
·[协议规范]http断点续传原理:http头 Range、…
·[NoSQL]Mongo数据库简介
·[JS/CSS/HTML]HTML 空格的表示符号 nbsp / en…
·[协议规范]什么是SPF记录?如何设置、检测SP…
·[PHP]精选国外免费PHP空间推荐
·[程序综合]常用IP地址查询接口
·[协议规范]图解 HTTPS 通信过程
·[程序综合]什么是 DNS Prefetch ?
·[程序综合]获取客户端IP地址的三个HTTP请求…
·[PHP]国产常见PHP开源框架比较