SMTP MTA Strict Transport Security(RFC 8461)——通过 DNS 发现策略并强制收件方使用 TLS 接收邮件,抵御 STARTTLS 降级攻击。生成 _mta-sts TXT 记录与策略文件。
RFC 8461 §3:MTA-STS 策略按"接收域"生效,域名不带协议前缀与子域(策略适用于该域所有 MX 主机)。
RFC 8461 §3.2:建议先 testing 配合 TLS-RPT 观察 1-2 周,确认无失败后再切 enforce。
RFC 8461 §3.2:策略中的 mx 主机必须与 DNS MX 记录匹配(可包含通配符 *.example.com)。留空则从 DNS 自动推断(需后续手动核对)。
RFC 8461 §3.2:收件方缓存策略的秒数。建议 86400(1 天)至 604800(1 周)。测试阶段可设短一些。
MTA-STS(RFC 8461)解决 STARTTLS 协议的先天缺陷:明文协商阶段的主动攻击者可剥离 TLS 扩展实现降级。MTA-STS 通过 HTTPS 托管策略文件,让收件方 MTA 在建立连接前就知道"该域必须使用 TLS"。
部署需要三部分:
① DNS TXT 记录:主机名 _mta-sts.您的域名,值 v=STSv1; id=时间戳。id 变更时收件方会重新拉取策略。
② 策略文件:托管在 https://mta-sts.您的域名/.well-known/mta-sts.txt,需 HTTPS 证书(可用通配符证书或 Let's Encrypt),MIME 类型 text/plain。
③ TLS 配置:所有 MX 主机必须支持 TLS 1.2+,且证书链有效。建议同时配置 TLS-RPT 报告接收失败情况。
注意事项:MTA-STS 依赖 DNSSEC 之外的"HTTPS 信任锚";若 mta-sts 子域无法配置证书,可考虑 DANE(RFC 7672,需 DNSSEC 支持)作为替代方案。两者机制互补。
参考标准:RFC 8461(MTA-STS)、RFC 8460(TLS-RPT)、RFC 7672(DANE SMTP)、RFC 3207(STARTTLS)。