入站邮件的强制 TLS 策略
DNS 与记录
DNS 查询 查询任意域名的全部 DNS 记录 A 记录查询 域名的 IPv4 地址 AAAA 记录查询 域名的 IPv6 地址 MX 查询 域名的邮件服务器 NS 查询 权威名称服务器 TXT 查询 TXT 记录、SPF、验证 CNAME 查询 规范名称(别名)记录 SOA 查询 起始授权机构记录 SRV 查询 服务位置记录 CAA 查询 哪些 CA 可以签发证书 反向 DNS(PTR) IP 地址到主机名 DNSSEC 检测 该域名是否已签名并通过验证? DNS 健康检测 完整的委派与 DNS 诊断报告电子邮件送达率
SPF 检测 验证您的发件人策略框架记录 DMARC 检测 检查并评估您的 DMARC 策略 DKIM 检测 查找并验证您的 DKIM 公钥 黑名单检测 对照电子邮件黑名单(DNSBL)检测 IP SMTP 测试 连接邮件服务器并检测 STARTTLS MTA-STS 检测 入站邮件的强制 TLS 策略 BIMI 检测 电子邮件的品牌徽标记录 TLS-RPT 检测 SMTP TLS 报告策略网络与网站
SSL 证书检测 检查网站的 TLS 证书和到期情况 HTTP 标头检测 检查响应标头、重定向和安全性 Ping(TCP) 通过 TCP 检测可达性和延迟 端口检测 哪些常用端口处于开放状态域名
WHOIS 查询 域名、IP 和 ASN 的注册数据MTA-STS 让一个域名能够要求入站邮件必须通过经过认证的 TLS 投递,以抵御降级和中间人攻击。IPeek 会读取 _mta-sts TXT 记录,并获取发布在 mta-sts.your-domain 上的策略文件。它弥补了机会性 STARTTLS 所留下的缺口——后者可被攻击者悄悄剥离。
MTA-STS 由两部分组成。位于 _mta-sts.your-domain 的 TXT 记录持有一个版本号和一个策略 ID,告诉发送方服务器策略存在,并在你更新时随之改变。策略本身存放在通过 HTTPS 提供的纯文本文件中,地址为 https://mta-sts.your-domain/.well-known/mta-sts.txt。该文件列出版本、模式、允许的 MX 主机名以及 max_age 缓存有效期。支持 MTA-STS 的发送方会获取并缓存该策略,随后拒绝向任何证书无法据此通过验证的 MX 投递。
IPeek 显示 _mta-sts TXT 记录是否存在,以及策略文件能否通过 HTTPS 访问。其中最重要的是 mode 值。none 表示没有策略生效,testing 表示报告失败但邮件仍照常投递,enforce 表示发送方在 TLS 认证失败时必须中止投递。请检查策略中的 mx 条目与你真实的 MX 记录是否一致,以及策略主机上的 HTTPS 证书是否有效。较高的 max_age(常为 604800 秒)能提升保护,因为已缓存的策略更难被实时篡改。
最常见的错误是 TXT 记录存在,但策略文件返回 404 或一个重定向,这会使策略无法使用。策略主机必须提供有效的 HTTPS,因此 mta-sts.your-domain 上过期或不匹配的证书会彻底破坏强制执行。当 MX 条目与你的 DNS 不再同步时,一旦切到 enforce 就会造成投递失败。请先在 testing 模式下推出,监控 TLS-RPT 报告中的失败,确认每个 MX 都出示有效且匹配的证书后,再切到 enforce。
在 testing 模式下,检测到 TLS 失败的发送方仍会投递邮件但报告该问题,让你在不阻断流量的情况下发现隐患。在 enforce 模式下,发送方必须对任何证书验证失败的 MX 中止投递。请先用 testing,观察你的 TLS-RPT 报告,仅在没有失败出现后再切换到 enforce。
策略文件通过 HTTPS 提供,地址为 https://mta-sts.your-domain/.well-known/mta-sts.txt,位于名为 mta-sts 的子域上。位于 _mta-sts.your-domain 的 DNS TXT 记录只宣告策略存在并携带一个 ID;实际规则,包括 mode 和允许的 MX 主机,都存放在那个 HTTPS 文件中。两者都必须存在且有效,MTA-STS 才能工作。
STARTTLS 是机会性的:它提供加密,但网络攻击者可以剥离 STARTTLS 通告,悄无声息地强迫明文投递。MTA-STS 增加了一个已发布的策略,告诉发送方 TLS 是必需的以及应信任哪些 MX 证书,因此被剥离或无效的 TLS 连接会导致投递失败,而非悄悄降级。它针对降级攻击对 STARTTLS 进行了加固。
不需要。MTA-STS 刻意依赖 HTTPS 和 Web PKI 来建立信任,而非 DNSSEC,这使它比 DANE 更易部署。策略文件的 HTTPS 证书提供认证。如果你的域名已有 DNSSEC,可以让 DANE 与 MTA-STS 并行运行,因为两种机制相互补充而非冲突。
先以 testing 模式发布 TXT 记录和策略文件,然后启用 TLS-RPT,让发送方服务器把任何 TLS 失败的报告邮件发给你。确认策略中的 MX 主机名与 DNS 一致,且每个 MX 都出示有效证书。当报告在一个正常报告周期内显示没有失败后,将模式改为 enforce 并更新策略 ID。