怎么配置标准的SPF记录?

2016/5/7 10:41:18      点击:

SPF就是Sender Policy Framework。SPF可以防止别人伪造你来发邮件,是一个反伪造性邮件的解决方案。当你定义了你的domain name的SPF记录之后,接收邮件方会根据你的SPF记录来确定连接过来的IP地址是否被包含在SPF记录里面,如果在,则认为是一封正确的邮件,否则则认为是一封伪造的邮件。目前基本的邮件运行商都配置了SPF记录.

 

最简单的方法,就是使用v=spf1 a mx -all的方式,

(1)在这里,v=spf1表示SPF的版本,如果使用Sender ID 的话,这个字段就应该是 v=spf2,个人建议就是使用SPF1,应该只要SPF1验证通过,Sender ID也是通过的,何况Sender ID我们还不知道怎么配置.

(2)A跟MX申请了合法的发信IP,比如你的域名是domain.com,网站的IP对应的是xxx.xxx.xxx.120,邮件记录mail.domain.com对应的IP是xxx.xxx.xxx.121那么,从120和121发来的IP都是合法的邮件,如果你确认只要MX发来的才是合法的邮件,你可以配置成v=spf1 mx -all的方式.

(3)-all申请,处理申请的以为,其它任何IP发来的邮件都是非法的邮件.

 

问题一: 我的出口通讯IP跟实际的MX不一致该如何处理?

比如MX配置的IP是xxx.xxx.xxx.120,但是实际对外联络的IP是xxx.xxx.xxx.121. 处理方式有两个

(1) 在你自己的路由中源IP使用MX对应的IP,让邮件指定走固定的IP即可,SPF配置成v=spf1 a mx -all

(2) 不修改路由,将SPF配置成 v=spf1 a mx ip4:xxx.xxx.xxx.121 -all

 

问题二:我有多个IP,该如何配置SPF ?

如果你想跟大型邮件商一样,也可以采用include的方式,比如v=spf1 include:spf.domain.com -all

然后在配置spf.domain.com的记录,主要,这里的spf.domain.com要配置的也是TXT记录,而不是A记录! 比如:

spf.domain.com    TXT   v=spf1 ip4:xxx.xxx.xxx.80 ip4:xxx.xxx.125.xxx ip4:xxx.xxx.250.xxx -all

 

你可以自己去查询下大型邮件商是如何配置SPF的,至于其它的,可以不必学的那么复杂. 想知道自己的SPF是否可以验证通过,发一封邮件到 check-auth@verifier.port25.com 马上就可以知道了! 收到回复的邮件如果spf跟 sender ID 都是PASS,那么就是对的了