什么是SPF
是发件人策略框架。SPF可以防止别人复制你发邮件,是一种防伪邮件的解决方案。如果您定义了域名的发件人策略框架,则收件人应根据您的发件人策略框架确定连接的IP地址是否包含在发件人策略框架中。如果是,将被认为是合适的电子邮件,否则将被认为是伪造的电子邮件。
以下是SPF的详细说明,
句型
在发送方策略框架中,根据排序顺序对获得的机制进行认证。如果发件人策略框架中没有机制或修饰符,默认设置结果是中性的;如果域没有发件人策略框架,则结果为“无”;如果在DNS分析期间出现临时错误,将会报告“临时错误”(在之前的总体方案中称为“错误”);如果发件人策略框架的句型不正确,如书写不正确或句型未知,它将报告“PermError”(以前称为“unknown”)。
1机制
1.1机理表明
所有
这种机制一直是并置的,一般用在记录的末尾。例如:
“v=SPF1mx–all”允许此域中的所有MX邮件网络服务器发送邮件,禁止所有其他服务器发送邮件。
"v=spf1–all"该域根本无法发送邮件。
"v=spf1all"所有网络服务器都可以发送邮件。
1.1.2ip4
“v=spf1ip4:192.168.0.1/16-all”允许从192.168.0.1到192.168.255.255的网络服务器发送邮件。
“v=SPF1IP4:192.168.0.1–all”允许192.168.0.1发送邮件,“v=SPF1IP4:192.168.0.1/32–all”愿意。
ip6防护等级
单独的IP,和ip4不一样。/128是前缀的默认设置。示例:
"v=spf1ip6:1080::8:800:200c:417a/96-全部"
允许1080::8:800:0000:0000和1080::8:800之间的服务器推送:FFFF:FFFF。
"v=spf1ip6:1080::8:800:68.0.3.1/96-全部"
允许1080::8:800:0000:0000和1080::8:800之间的服务器推送:FFFF:FFFF。
1.1.4a
示例:假设当前域是example.com。
“v=spf1a-all”该域目前已得到应用。
"v=spf1a:example.com-all"该域名沿用至今。
如果当前域是example.com,则等效。
"v=spf1a:mailers.example.com-all"特定mailers.example.com的服务器IP可以发送邮件。
"v=spf1a/24a:offsite.example.com/24-all"如果example.com分析192.0.2.1,那么所有C类地址192.0.2.0/24都将作为可以发出邮件的IP地址;同样,如果offsite.example.com有几个A记录的详细地址,每个IP地址将扩展到CIDR子网,作为外发邮件的IP地址。
1.1.5mx
与所有域的MX记录匹配的A记录将根据MX记录的优先级进行身份验证。如果推送IP在此类记录中,则匹配该机制。如果未指定域,默认设置是当前域。
a记录必须与电子邮件的IP地址完全匹配。如果使用CIDR作为前缀,则必须与IP地址认证一一匹配。
示例:
v=spf1MXMX:deferrals.domain.com-all"
也许一个域通过它的MX服务器和另一组服务器发送邮件,这些服务器的任务是为延迟域重试邮件。
也许一个域可以根据它的MXweb服务器发送邮件,此外,它还可以根据deferrals.domain.com的MXweb服务器发送邮件。
"v=spf1MX/24MX:offset.domain.com/24-all"
也许一个域的MX网络服务器在一个IP上接受邮件,而在附近的另一个IP上发送邮件。
1.1.7prt
至少有一个由IP推送的PTR记录与给定的域匹配。尽量减少这种机制的应用,因为它消耗了大量的DNS查看
示例:
"v=spf1ptr-all"
"v=spf1ptr:otherdomain.com-all"
1.1.8存在
检查呈现域的A记录,如果有结果,就匹配它。如果结果为“-”,则按127.0.0.2处理。
在以下示例中,发送IP地址是1.2.3.4,当前域是example.com。
"v=spf1存在:example.net-all"
如果example.net不能分析,结果将是不成功的。如果它能分析,就会匹配机制。
包括
句型:包括:
检查并匹配特定的域。如果检查中没有匹配或错误,那么下一个机制就开始解决它。警告:如果特定域不是合理、合法、合理的发件人策略框架,将返回“永远不正确”的结果。基于此错误,一些邮件收件人将拒绝接受邮件。
示例:
在以下示例中,电子邮件IP是1.2.3.4,当前域是example.com。
"v=spf1include:example.net–all"
如果在example.net没有发送方策略框架,结果将是“PermError”
假设example.net的发送方策略框架是“v=spf1a–all”
查一查exapmle.net的记录。如果和1.2.3.4匹配,结果是“通过”;如果不匹配,include整体匹配不成功,下面的-all不会被认证,最终整体结果为“失败”。
这个机制会涉及到信任的关系,很有可能会出现个人滥用权力的情况,很有可能会被别人模仿。所以可以设置为中性,在include之前会加一个标识符?
“v=spf1?include:example.net–all"
这种机制一般不适合选择。
1.2标识符
作为机制的前缀,说明机制的情况。该机制的默认设置标识符是“”
”“通过(根据)
”——“失败”
"~"SoftFail(软故障)
"?"中性(中性)
2修饰符
在发件人策略框架中,每个修饰符只能应用一次,不能重复使用多次。身份验证中可能会忽略未知的修饰符。
1.2.1重定向
句型:重定向=
可以用特定的域替换当前的域。
在下面的例子中:当前域是example.com,发送电子邮件的IP地址是1.2.3.4。
"v=spf1redirect=example.net"
如果example.net没有发送方政策框架,则返回“未知”是不正确的
假设example.net的发送方策略框架是“v=spf1a–all”
查一下example.net的A记录,如果和1.2.3.4吻合,就“及格”;如果不匹配,那么这个个体的行为就是不成功的,然后-all机制才刚刚启动。
1.2.2实验
句型:exp= 展示一个解释性的句子。如果SMTP接收者拒绝信息内容,它可以包括返回给发送者的表达式信息内容。发送者策略框架可以包括发布者的表达式字符串数组,通知相关错误报告或必须浏览的辅助网页等。 二、治疗方法 三个错误代码 只有以下发件人策略框架的认证结果: 表达 可以做个人行为
个结果
通过
发送方策略框架是特定的,允许服务器推送。
承认
失败发送方策略框架是特定的,服务器不允许推送。
拒绝
软故障发送方策略框架特定,服务器不允许推送,但可以再次推送。
但是接受它作为一个标志
中性发件人策略框架详细,但其有效性无法确定。
承认
无没有发件人策略框架或发件人策略框架认证没有结果。
承认
PermError永久不正确(如不正确的文件格式记录)
未指明的
t错误临时错误生成
接受或拒绝
设置发件人策略框架
发件人策略框架是封闭的,比如:
v=spf1aMXMX:mail.jefflei.comip4:202.96.88.88~all
这个发件人策略框架实际上表示允许推送@yourdomain.com的IP地址:
-Fail,表示没有其他东西凑在一起。
~表示软故障,通常用于测试。
?意味着忽视。
如果有多个传出ip,它必须包括几个。
它可以根据本网站的指导自动生成发件人政策框架:http://www.openspf.org/。Godaddy的域名控制面板的TXT记录也显示了设置发件人策略框架的指导,设置起来非常方便。
检查发件人策略框架设置是否合适
把电子邮件发给check-auth@verifier.port25.com。如果收到的消息内容为:SPF检查:通过,则设置成功。
检查域名的发件人策略框架
在Windows下,菜单栏->: *** 作->:键入cmd,然后输入,并在cmd下键入:
Nslookup-type=txt网站域名
可以看到网站域名设置的TXT记录。
在Unix计算机 *** 作系统下:
Dig-ttxt网站域名
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)