SPF 是发送方策略框架 (Sender Policy Framework) 的缩写,希望能成为一个防伪标准,来防止伪造邮件地址。这篇文章对 SPF 进行了简单介绍,并介绍了它的一些优点和不足。
SPF 诞生于2003年,它的缔造者 Meng Weng Wong 结合了反向 MX 域名解析(Reverse MX) 和 DMP (Designated Mailer Protocol) 的优点而付予了 SPF 生命。
SPF 使用电子邮件头部信息中的 return-path (或 MAIL FROM) 字段,因为所有的 MTA 都可以处理包含这些字段的邮件。不过微软也提出了一种叫做 PRA (Purported Responsible Address)的方法。PRA 对应于 MUA (比如 thunderbird) 使用的终端用户的地址。
这样,当我们把 SPF 和 PRA 结合起来的时候,就可以得到所谓的“Sender ID”了。Sender ID 允许电子邮件的接收者通过检查 MAIL FROM 和 PRA 来验证邮件的合法性。有的说法认为,MAIL FROM 检查由 MTA 进行,而 PRA 检查由 MUA 来完成。
事实上,SPF 需要 DNS 以某种特定的方式来工作。也就是必须提供所谓的“反向 MX 解析”记录,这些记录用来解析来自给定域名的邮件对应的发送主机。这和目前使用的 MX 记录不通,后者是用来解析给定域名对应的接收邮件的主机的。
怎么使用SPF?
要想用 SPF 来保护你的系统,你必须:
- 配置 DNS,添加 TXT 记录,用于容纳 SPF 问询的信息。
- 配置你的电子邮件系统(qmail, sendmail)使用 SPF,也就是说对服务器上每封进入的邮件进行验证。
SPF 的 TXT 记录
SPF 记录包含在一个 TXT 记录之中,格式如下:
v=spf1 [[pre] type [ext] ] ... [mod]
每个参数的含义如下表所示:
参数 |
描述 |
v=spf1 |
SPF 的版本。如果使用 Sender ID 的话,这个字段就应该是 v=spf2 |
pre |
定义匹配时的返回值。
可能的返回值包括:
返回值 |
描述 |
+ |
缺省值。在测试完成的时候表示通过。 |
- |
表示测试失败。这个值通常是 -all,表示没有其他任何匹配发生。 |
~ |
表示软失败,通常表示测试没有完成。 |
? |
表示不置可否。这个值也通常在测试没有完成的时候使用。 |
|
type |
定义使用的确认测试的类型。
可能的值包括:
候选值 |
描述 |
include |
包含一个给定的域名的测试 以 include:domain 的形式书写。
|
all |
终止测试序列。 比如,如果选项是
-all,那么到达这条记录也就意味着测试失败了。但是如果无法确定,可以使用"?all"来表示,这样,测试将被接受。
|
ip4 |
使用 IPv4 进行验证。 这个可以以 ip4:ipv4 或 ip4:ipv4/cidr 的形式使用。建议使用这个参数,以减少域名服务器的负荷。
|
ip6 |
使用 IPv6 进行验证。
|
a |
使用一个域名进行验证。 这将引起对域名服务器进行一次 A RR 查询。 可以按照 a:domain, a:domain/cidr 或
a/cidr 的形式来使用。
|
mx |
使用 DNS MX RR 进行验证。 MX RR 定义了收信的 MTA,这可能和发信的 MTA 是不同的,这种情况基于 mx 的测试将会失败。
可以用 mx:domain, mx:domain/cidr 或 mx/cidr 这些形式进行 mx 验证。
|
ptr |
使用域名服务器的 PTR RR 进行验证。 这时,SPF 使用 PTR RR
和反向图进行查询。如果返回的主机名位于同一个域名之内,就验证通过了。 这个参数的写法是 ptr:domain
|
exist |
验证域名的存在性。 可以写成 exist:domain
的形式。
|
|
ext |
定义对 type 的可选扩展。如果没有这个字段,那么仅使用单个记录进行问询。 |
mod |
这是最后的类型指示,作为记录的一个修正值。
修正值 |
描述 |
redirect |
重定向查询,使用给出的域名的 SPF 记录。 以 redirect=domain 的方式使用。
|
exp |
这条记录必须是最后一条,允许给出一条定制的失败消息。
IN TXT "v=spf1 mx -all exp=getlost.example.com"
getlost IN TXT "You are not authorized to send mail for the domain"
|
|
邮件传输过程
SPF工作原理
- 大小: 13 KB
- 大小: 44.1 KB
分享到:
相关推荐
时至今日,反垃圾邮件技术的发展方向主要包括基于行为模式分析的动态过滤技术、 DomainKeys、电子邮票、Sender permitted From(SPF)等等。反垃圾邮件技术的研发和产品的推广也成为商家继防火墙技术以及入侵检测...
总结,基于ASP的反垃圾邮件管理系统的设计涉及了Web开发、邮件过滤技术、数据库管理和用户交互等多个方面,对于理解和构建类似的系统具有重要的参考价值。通过深入研究源代码和论文,开发者可以提升自己的技能,同时...
1. **启用SmartScreen筛选器**:SmartScreen是Exchange Server 2003内置的一种反垃圾邮件技术,它可以基于邮件发送者的声誉和内容特征来判断邮件是否为垃圾邮件。管理员应确保在Exchange服务器上启用SmartScreen,并...
【反垃圾邮件技术解析】 电子邮件在现代社会中扮演着至关重要的角色,然而,伴随而来的是垃圾邮件的泛滥。垃圾邮件不仅消耗用户的时间和精力,还消耗了大量的网络资源,甚至成为黑客和病毒传播的渠道,每年造成数十...
【反垃圾邮件技术综述】 反垃圾邮件技术是网络安全领域中的一个重要组成部分,旨在保护电子邮件系统免受不受欢迎的、欺诈性的或恶意的邮件攻击。近年来,由于垃圾邮件的泛滥,反垃圾邮件策略已不再局限于单一技术,...
以下是对Exchange反垃圾邮件技术的详细说明: ### 引言 在当今信息化社会,电子邮件已经成为企业内外部沟通的重要工具。然而,垃圾邮件的大量涌入不仅浪费了用户的时间,还可能携带恶意软件或成为网络钓鱼攻击的...
《反垃圾邮件关键技术研究与实现》是一篇由林丹宁撰写的浙江大学硕士学位论文,主要探讨了在计算机系统结构领域中的反垃圾邮件技术。该研究针对日益严重的电子邮件安全问题,特别是垃圾邮件对个人用户和企业通信的...
【基于策略的反垃圾邮件技术APF】 反垃圾邮件技术是一项重要的网络安全措施,旨在保护电子邮件系统免受未经请求的垃圾邮件的侵扰。APF(Antispam Policy Framework)是一种利用综合策略分析SMTP(Simple Mail ...
APF的出现是因为现有的反垃圾邮件技术存在不足,例如RBL的即时性不够、误判率高,SPF(Sender Policy Framework)仍处于草案阶段,且在国内推广和部署困难。同时,内容过滤技术如贝叶斯算法、基于规则匹配和加权类...
随着电子邮件的普及,垃圾邮件问题日益严重,反垃圾邮件技术也在不断演进。早期的方法主要是基于关键词过滤,随着时间的推移,技术发展到利用发件人身份验证、IP信誉系统以及更复杂的算法来识别和阻止垃圾邮件。此外...
本文档将从简介、与DKIM及SPF区别、应用场景、架构、举例、发展前景6个角度介绍反垃圾邮件DMARC技术。
【网易企业邮箱反垃圾邮件技术详解】 作为中国互联网反垃圾邮件行业协会的发起者,网易在反垃圾邮件领域具有显著的专业优势。网易不仅参与制定了中国的反垃圾行业法规,而且自主研发了智能反垃圾邮件技术,旨在为...
2. **反垃圾邮件技术**:反垃圾邮件系统通常采用多种策略,如基于内容的过滤(关键词检查)、黑白名单机制、邮件评分系统、IP地址和域名黑名单、发件人验证(如SPF和DKIM)以及行为分析等。这些方法结合使用,可以...
《Winmail反垃圾邮件指南》提供了有效设置Winmail邮件系统以过滤垃圾邮件的方法。本文主要阐述了几个关键步骤,旨在帮助用户优化邮件管理,减少不必要的垃圾邮件干扰。 首先,在“系统设置”>“SMTP设置”>“SMTP...
垃圾邮件发送者不断进化,采用新的技术手段规避过滤机制,这使得反垃圾邮件技术也必须持续更新和完善。在选择具体的解决方案时,企业组织和单位需要考虑各自的实际情况。通过比较,硬件产品因其较低的管理和较高安全...
【Winmail反垃圾邮件指南使用】的文档主要介绍了如何配置Winmail邮件系统来有效地过滤垃圾邮件,保护用户免受垃圾邮件的骚扰。以下是对这些设置的详细解释: 1. **SMTP过滤**: - **允许MAIL FROM命令中出现空地址...
2. 反垃圾邮件策略:系统可能采用了多种技术来识别和阻止垃圾邮件,如关键词过滤、黑白名单机制、邮件头检查、发件人身份验证(如SPF、DKIM、DMARC)、内容过滤、IP信誉系统等。 3. 数据库管理:在处理邮件时,系统...
《基于ASP的反垃圾邮件管理系统的设计》是一份深入探讨如何构建高效、实用的反垃圾邮件管理系统的课程设计或毕业设计项目。此系统采用ASP(Active Server Pages)技术,这是一种微软开发的服务器端脚本环境,用于...