[快速解答]
SPF (发件人策略框架)是一个DNS TXT记录,列出了允许为您的域发送电子邮件的邮件服务器和服务。接收方将发送服务器的 IP 与此列表进行比较。它在RFC 7208中定义,是Gmail和Yahoo要求的三项检查之一。
主要事实
- ›在根域上作为TXT记录发布,从v=spf1.
- ›每个域只有一条SPF记录;两条记录导致 PermError。
- ›最多 10 个 DNS 查询机制(包括、a、mx、ptr、exists、redirect)。
- ›以~all ( softfail ) 或-all (失败) 结尾。
- ›SPF检查信封发件人 ( Return-Path ),而不是可见的发件人地址; DMARC添加该链接。
由EmailAuth研究团队审核
SPF (发件人策略框架)是一种电子邮件身份验证标准,在RFC 7208中定义,允许域所有者发布允许代表该域发送电子邮件的邮件服务器列表。当接收服务器收到邮件时,它会根据DNS中域发布的SPF记录检查发送服务器的 IP 地址。如果 IP 被授权, SPF通过。如果不是,接收者可以将该消息视为可疑消息或拒绝它。 SPF是保护域免遭欺骗的三个核心标准之一,另外两个标准是DKIM和DMARC 。
SPF如何逐步发挥作用
SPF在SMTP会话期间、在邮件正文被完全接受之前运行。检查针对Return-Path中的域(信封发件人)运行,而不是针对可见的发件人地址,这是对于DMARC对齐很重要的区别。接收服务器读取SPF记录,解析其中包含的机制,并将连接 IP 与授权范围进行比较。
- 发送服务器连接并宣布其信封发件人域。
- 接收方在DNS查询该域的SPF TXT记录。
- 接收器按顺序评估每种机制,直到有一个匹配为止。
- 匹配根据限定符返回通过、失败、 softfail或中性。
- 接收方应用自己的策略, DMARC使用结果进行对齐。
10 个DNS查找限制
RFC 7208将SPF评估限制为每次检查 10 次DNS查找。 include、a、mx、ptr 和 Exist 等机制都会消耗查找,并且每个 include 都可以触发第三方记录内的进一步嵌套查找。 Google Workspace 、 Microsoft 365 、 Salesforce和SendGrid等热门发件人都添加了自己的链,因此拥有少数供应商的域可以快速突破限制。当评估超过 10 次查找时,接收器将返回permerror ,大多数系统将其视为失败。
为什么限制咬
交叉 10 次查找, SPF返回permerror 。来自您自己批准的供应商的合法邮件可能会失败身份验证,而您不会看到任何错误。
SPF停止、 DKIM和DMARC开始的地方
SPF检查连接服务器,因此它无法转发。当邮箱转发邮件时,新的连接 IP 是转发器,而不是您的服务器,并且SPF会失效。 DKIM使用随电子邮件一起传输的加密密钥对邮件内容进行签名,因此它可以在转发后继续存在。 DMARC通过要求SPF或DKIM通过并与可见的发件人域保持一致,将两者联系在一起,并告诉接收者在失败时该怎么做。自 2024 年 Google 和Yahoo规则起,批量发件人必须使用SPF和DKIM进行身份验证并发布DMARC 。
使用SmartSPF修复查找溢出
EmailAuth SmartSPF通过动态扁平化解决了 10 次查找的限制。它可以扩展您的完整包含链,将其扁平化为一个优化的记录,并在Salesforce 、 SendGrid 、 Microsoft 365和Google Workspace的第三方发件人 IP 范围发生变化时保持这些供应商的基础设施同步。免费的域名扫描可以扩展您的包含链并计算您当前的查找次数,以便您可以准确地了解自己的立场。
常见问题
SPF代表什么?
SPF代表发件人策略框架。它是RFC 7208中定义的电子邮件身份验证标准,允许域发布允许哪些邮件服务器代表其发送。接收服务器使用它来检测伪造的发件人。
SPF可以阻止所有电子邮件欺骗吗?
不会SPF仅根据授权 IP 检查信封发件人域,并且在转发邮件时会中断。要完全保护可见的发件人地址,您还需要DKIM和强制对齐的DMARC策略。
SPF 10 DNS查找限制是多少?
当接收方评估SPF记录时, RFC 7208允许最多 10 次DNS查找。 include、a 和 mx 等机制均会消耗查找,而嵌套的供应商记录会增加更多查找。超过 10 将返回permerror ,该错误被视为失败。
2024 年及以后还需要SPF吗?
是的。自 2024 年起,Google 和Yahoo要求批量发件人对电子邮件进行身份验证, SPF与DKIM和DMARC一起是其中的核心部分。跳过它可能会导致您的邮件被过滤或拒绝。
什么是SPF记录?
DNS TXT记录列出了有权为您的域发送电子邮件的服务器,例如v=spf1 include:_spf.google.com ~all 。
如何添加多个SPF记录?
你不能。将所有发件人合并为一条记录: v=spf1 include:_spf.google.com include:sendgrid.net ~all 。
如何创建SPF记录?
列出为您发送邮件的每项服务,添加每个提供商的包含或 IP,并以~all或-all结尾。 SPF生成器可以为您构建它。
SPF 10 查找限制是多少?
SPF评估最多可以执行 10 次DNS查找。超过它会返回 PermError 并且SPF失败。删除未使用的包含或平整记录。
v=spf1 include:_spf.google.com ~all是什么意思?
它授权Google Workspace服务器为您的网域发送邮件,并对其他所有内容进行软故障处理。
[ SPF 指导 ]
企业出处
为什么顶级金融机构和政府 退役了他们的电子邮件安全仪表板。
传统的电子邮件身份验证平台会向您出售仪表板并要求您的工程师来完成这项工作。在高风险环境中,手动监督意味着延迟执行、配置漂移和不受监控的影子域。
EmailAuth是代理电子邮件来源平台。 我们的代理人强制执行 p=reject,保持第三方发件人一致并将您的域名移至完整状态 RFC 9989 合规性、新的DMARC标准,以及人机交互审核能力。
SaaS · 专用租赁 · 气隙本地部署 · BYOK 加密