如何在 Route 53 中配置超过 255 个字符的 SPF 或 TXT 记录?

上次更新时间:2021 年 5 月 12 日

如何在 Amazon Route 53 中配置长度超过 255 个字符的发件人策略框架 (SPF) 或文本 (TXT) 记录?

简短描述

SPF 是一种基于 DNS 的开放式电子邮件身份验证系统,可让域所有者控制哪些 IP 地址可以代表他们发送电子邮件。接收电子邮件服务器将检查 SPF 记录中的传入邮件,并确定源服务器 IP 地址是否列在 SPF 规则集中。

一些电子邮件收件人严格要求使用 SPF。如果您尚未发布针对域的 SPF 记录,则电子邮件可能会被标记为垃圾邮件或被退回。如果电子邮件是通过未经授权的邮件服务器发送的,则该电子邮件可能被标记为垃圾邮件。正确配置 SPF 记录可提高电子邮件的可投递性,并保护您的域免受以其名义发送恶意电子邮件的侵害。

解决方法

重要提示:Route 53 和大多数邮件提供商不再提倡创建 SPF 记录。有关更多信息,请参阅 RFC 7208。最佳实践是创建一条包含相关值的 TXT 记录,而不是 SPF 记录。

创建 SPF 记录

  1. 收集您用来发送电子邮件的所有 IP 地址。请记得包括所有发送组织,例如您的电子邮件服务提供商、Microsoft Office 邮件服务器以及代表您发送电子邮件的任何第三方邮件服务器。
  2. 为步骤 1 中确定的每个域创建 SPF 记录,即使该域没有主动发送电子邮件。请务必:
    • 添加 v=spf1 (version 1) 标签将记录定义为 SPF。然后,包括有权代表您发送电子邮件的所有 IP 地址和子网。例如:v=spf1 ip4:34.243.61.237 ip6:2a05:d018:e3:8c00:bb71:dea8:8b83:851e & ip4:192.168.1.0/24
    • 为用于代表您发送电子邮件的每个第三方组织添加一个 include 标签。例如:include:thirdpartydomain.com。请咨询您的第三方提供商,以确定要将哪个域用作 include 语句的值。
    • all 标签来结束您的记录。all 标签指示当收件人检测到未在 SPF 记录中列出的服务器时将应用哪个策略。如果您使用 -all 标签,则 SPF 记录中未列出的任何服务器都无权发送电子邮件(不合规电子邮件将被拒绝)。如果您使用 ~all 标签,则从未列出的服务器收到的电子邮件将标记为软失败(电子邮件被接受但会加标记)。使用 +all 标签不是最佳做法,因为此标签允许任何服务器从您的域发送电子邮件。
    • 对于不发送电子邮件的域,最佳做法是发布以下记录:v=spf1 -all

定义 SPF 记录属性后,记录格式类似于:v=spf1 ip4:54.66.167.159 ip6:2406:da1c:1c7:a301:c560:240:cb38:2937 ip4:192.168.1.0/24 include:thirdpartydomain.com -all

创建 TXT 记录

需要记住的要点:

  • TXT 记录包含一个或多个用双引号 (") 括起来的字符串。
  • 您可以在 TXT 记录的一个字符串中输入长度最大为 255 个字符的值。
  • 您可以在一条 TXT 记录中添加多个包含 255 个字符的字符串。
  • TXT 记录中值的最大长度为 4000 个字符。
  • TXT 记录值区分大小写。

对于超过 255 个字符的值,请将值拆分为长度不超过 255 个字符的字符串。使用以下语法将每个字符串用双引号 (") 括起来:Domain name TXT "String 1" "String 2" "String 3"….."String N"

有关在 TXT 记录中指定哪些值的信息,请参阅输入 TXT 记录值

创建 TXT 记录来替换 SPF 记录:

  1. 打开 Route 53 控制台
  2. 选择托管区域
  3. 选择该 SPF 记录的域
  4. 复制该 SPF 记录的值,然后选择 Create record(创建记录)。
  5. 对于 Routing policy(路由策略),选择 Simple routing(简单路由)。
  6. 选择 Next(下一步)。
  7. 选择 Define simple record(定义简单记录)。
  8. 对于 Record name(记录名称),指定一个名称。
  9. 对于 Value/Route traffic to(值/流量路由至),选择 IP address or another value depending on the record type(IP 地址或其他值,具体取决于记录类型)。然后,粘贴您在第 4 步中复制的 SPF 记录值。
  10. 对于 Record type(记录类型),选择 TXT
  11. 对于 TTL (seconds)(TTL (秒)),指定一个生存时间值。
  12. 选择 Define simple record(定义简单记录)。

以下示例显示了一条 TXT 记录,该记录配置了域验证、SPF 记录和 DKIM 签名的值:

txt1.geeksbox.club. TXT 3600 "google-site-verification=rXOxyZounnZasA8Z7oaD3c14JdjS9aKSWvsR1EbUSIQ"
"v=spf1 include:_netblocks.google.com include:_netblocks2.google.com include:_netblocks3.google.com ~all"
"spf2.0/pra include:spf1.amazon.com include:spf2.amazon.com include:amazonses.com -all"
"v=DKIM1;k=rsa;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDeIhtCv3vUinyhKiKtZ8efjHGGo8gE1T+o7gLrvo6yRtdz9ICe6Fz5sgz0WYFW5nCV4DmaTcS25TfgWKsLgg"

这篇文章对您有帮助吗?


您是否需要账单或技术支持?