防止垃圾email的spf的DNS记录

目前垃圾邮件多如牛毛,与之对应的防止方法层出不穷,黑名单,白名单,关键字过滤,特征分析,专门网站提供特征,还有这个SPF。

这个SPF是啥呢,全称为 Sender Policy Framework

是DNS记录配合的一个协议。

目前的DNS服务器大多不支持SPF记录,我还没看见那个DNS服务支持的,那么为了解决这个问题,都是使用该域的txt记录。

SPF记录定义了几种方式

+ 通过

- 拒绝

~ 软拒绝

? 不置可否,也就是不做判断

来看一个例子

synkbit.com     text =

"v=spf1 +a +mx +a:vps1038566.cp.hosting-srv.net -all"

spf1 是版本1 ,如果使用 Sender ID 的话,这个字段就应该是 v=spf2,那个东西是微软搞出来的。+a 是a记录通过,这里是指synkbit.com这个域名的a记录所对应的IP地址,下面是+mx,是synkbit.com这个域名的mx记录,所对应的IP地址,+a:vps1038566.cp.hosting-srv.net,就是直接指定一个域名vps1038566.cp.hosting-srv.net所对应的IP地址,从这些地址发出来的信才是合法的,然后是最后一句-all,-是拒绝,-all就是拒绝所有的,就和我们做防火墙策略的时候,前面都是许可,最后跟一条拒绝所有一样。但是-all后面还是可以跟东西的,exp,如果出现必须是最后一项,

exp=getlost.example.com,exp指定的域名,是为了给拒绝提供一个拒绝信息,这个信息就从getlost.example.com域名的DNS的text记录里找,所以做完了exp记录还没完,需要添加getlost的txt记录,比如"You are not authorized to send mail for the domain",明白告诉被拒绝的对象,是什么原因拒绝收你的信。

过滤选项可以是a记录,mx记录,这些是依赖DNS的,当然可以直接指定IP地址,ip4:192.168.1.1,当然是支持prefix的,ip4:192.168.1.0/24,也支持IPv6,ipv6:111::11,当然也支持prefix。

还有测试项目include,比如v=spf1 include:spf1.hichina.mail.aliyun.com -all,这就是像一个别名一样,配置的内容到spf1.hichina.mail.aliyun.com去找,再去查询DNS的txt的spf1.hichina.mail.aliyun.com 记录,一般出现在虚拟共有主机,独立IP主机不会用。

还有测试项目exists,这个我觉得就是鸡肋,没啥用处,可以写成 exist:domain 的形式,就是看看这个域名是否存在A记录,这似乎对放垃圾邮件没啥用处吧。

还有测试项目ptr,可以写成 ptr:domain 的形式熟悉DNS记录的就知道,这个是非常效率资源的一种方式,官方都不推荐使用,还是算了吧。

还有redirect,格式为redirect=<domain>,将用给定域名的 SPF 记录替换当前记录,真不知道有了前面那么多选择,这个还有啥用处。

官方地址:http://www.openspf.org/

RFC4408协议 http://www.openspf.org/RFC_4408

时间: 2024-09-30 01:52:38

防止垃圾email的spf的DNS记录的相关文章

邮件服务器DNS设置-----MX、SPF、DKIM记录详解

邮件服务器的DNS设置 DNS记录,需要你到你的域名托管商那里进行设置或者你自己管理DNS服务器.不少域名托管商不支持txt记录或者不支持DKIM记录,所以你就无法使用SPF和DKIM的功能.DNS的修改,需要48小时以上才能生效.国内的万网是不支持DKIM,目前新网是支持SPF和DKIM. 1.MX记录邮件的MX记录最好是指向机器A记录,尽量不要直接指向IP地址(不符合规范).1.1 添加A记录mail.example.com 192.168.1.1001.2 添加MX记录example.co

DNS记录类型介绍(A记录、MX记录、NS记录等)

DNS A记录 NS记录 MX记录 CNAME记录 TXT记录 TTL值 PTR值 建站名词解释:DNS A记录 NS记录 MX记录 CNAME记录 TXT记录 TTL值 PTR值 泛域名 泛解析 域名绑定 域名转向 1.DNS:Domain Name System 域名管理系统 域名是由圆点分开一串单词或缩写组成的,每一个域名都对应一个惟一的IP地址,这一命名的方法或这样管理域名的系统叫做域名管理系统.  DNS:Domain Name Server 域名服务器 域名虽然便于人们记忆,但网络中

DNS篇之二DNS记录类型

数据库中的,每一个条目称作一个资源记录(Resource Record, RR) 资源记录的格式: 第一段                       第二个字段    第三个字段          第四个字段(资源记录类型)    第五个字段 NAME                         TTL              IN(internet)               RRT VALUE值 ttl如果不写的话,需要在全局变量里面指定一个默认值.ttl值是可省略的. TTL 6

使用脚本更新阿里云DNS记录

公司没有自己的固定公网IP地址,之前采用花生壳DDNS解析进行域名访问.但是花生壳DDNS需要花钱,免费版的使用效果并不是很好,导致DDNS解析老是失败,而且域名不是很好记.后来再阿里云上购买了域名,因为没有固定公网IP,所以每次IP变化就得更改解析记录,非常不现实.后来在阿里云上找到了解决方法,思路就是使用阿里云上的API,使用脚本运行在内网服务器上,每当检测到自己公网IP变化,就调用阿里云API,修改自己域名解析到最新的公网地址上.这样就可以实现动态域名解析 1. 阿里云配置 登陆进入阿里云

如何验证是否为域控制器创建了 SRV DNS 记录

http://blog.chinaunix.net/uid-641896-id-338662.html 如何验证是否为域控制器创建了 SRV DNS 记录,布布扣,bubuko.com

dns记录整理

由于在使用DNS管理后台之前DNS记录是手动去写入的,记录格式有点乱. 现在按格式整理DNS记录(A记录以及CNAME记录): domain            TTL    type    data www.baidu.com    1800    A    127.0.0.1 #!/bin/bash filelist=`ls | grep "^named"` basedir=`pwd` resdir="$basedir"/dnsdata/ rm -rf &qu

Lync Server 2013 部署 _ 准备DNS记录和Lync Server 安装账户

Lync Server 最后的准备工作 ===DNS记录准备 1)首先将所有服务器的IPV6关掉 2).pool.jacksi.win(如果你Pool中有两台Server,需要创建两条pool.jacksi.win,然后将记录分别指向两台Server的IP地址) .admin.jacksi.win.dialin.jacksi.win.meet.jacksi.win 指定到LyncFE01的IP地址,如果有LyncFE02的话同样指定到LyncFE02 3)新建一条SRV记录,右键其它新记录 客户

给网站添加IPv6 DNS记录

一. 1) 使6box提供的DNS64服务,解析出自己网站对应的IPv6域名 Windows: Win+R打开运行,输入cmd,打开命令提示符,输入以下命令 Nslookup www.6box.cn dns64.6box.cn 命令中www.6box.cn改成你的网站名称,如果APP里调用了多个子域名,都需要进行转换,如a.6box.cn ,b.6box.cn 2) 将解析出来的IPv6地址记录添加到DNS域名托管商管理系统里,此操作通常在万网等域名网站里操作,不是在网站服务器上操作,建议直接联

Lync Server 2013 标准版部署(二)DNS记录&amp;权限

Lync Server 2013 标准版数据库安装完成后:登录AD服务器,在AD服务器中新建Lync 系统管理账户及添加Lync所需的DNS记录.1.打开ADUC,创建Lync系统管理账户LyncAdmin2.设置密码3.创建完成4.选择LyncAdmin账户属性,选择隶属于5.赋予权限CsAdministrator.CsPersistentChatAdministrator.CsUserAdministrator6.打开DNS管理控制台7.右键选择新建正向查找区域,下一步8.选择主要区域,下一