Skip to content

04 · 传输安全与 TLS 实践 ​

协议原理见 N05,本篇讲怎么把 TLS 配对、用对:证书生命周期、HSTS、mTLS、常见配置错误。先给结论:传输安全不是"加个绿锁"就完事,是证书、版本、策略与监控的组合。

速览卡 ​

项内容
一句话定位把 TLS 从"能跑"配到"安全"的落地清单与排障
核心内容证书生命周期、HSTS、协议与套件策略、mTLS、常见错误
读完能回答HTTPS 为什么还不够?证书怎么续、吊销怎么办?
相关板块N05 TLS | S03 密码学 | C16 服务端安全纵深

一、先给结论:传输安全不止"装个证书" ​

text
传输安全 = 证书正确 + 协议够新 + 降级被禁 + 密钥安全 + 有监控

一句话:浏览器不报错只是底线。生产要回答四个问题:证书会过期吗、支持 TLS 1.2 以下吗、HTTP 会被重定向到 HTTPS 吗、私钥丢过吗。


二、证书生命周期:从申请到吊销 ​

阶段要点
申请用受信 CA,域名校验,别用自签证书上生产
部署证书+私钥正确匹配,私钥不进镜像/仓库
续期自动续期(如 Let's Encrypt),提前告警
吊销私钥泄露立即吊销并轮换,同步到 CRL/OCSP
清理到期证书及时移除,别留"忘了"的旧证书

最容易出事的是续期:证书过期不报错于配置,只表现为用户看到"不安全"。续期自动化的核心是提前 30 天告警而不是等过期。


三、协议版本与套件策略 ​

项建议
协议只开 TLS 1.2+,禁用 SSLv3/TLS1.0/1.1
套件只留 ECDHE + GCM 一档,禁用弱套件
密钥优先 ECDSA,兼容场景用 RSA ≥ 2048
检查用 ssllabs.com 或 nmap 定期扫

类比前端:就像浏览器兼容矩阵——旧版本可以"知道但不支持",但绝不能"默默降级"。


四、HSTS:把"安全"固定下来 ​

http
Strict-Transport-Security: max-age=31536000; includeSubDomains
作用说明
强制 HTTPS浏览器记住:该域名只走 HTTPS
防降级阻止中间人把 HTTPS 降成 HTTP
注意部署前确认 HTTPS 100% 可用,否则 max-age 别一次给一年

HSTS 是把双刃剑:一旦下发,客户端会强制 HTTPS 很长时间。先小 max-age 灰度,确认无误再加大。


五、mTLS:服务间通信怎么认证 ​

mTLS(双向 TLS):不只客户端验证服务端,服务端也要求客户端出示证书。

场景是否用 mTLS
用户浏览器访问不用,用户用账号体系
内部服务间调用常用,替代"裸内网信任"
与第三方平台对接看对方要求,常配合 API 网关

一句话:mTLS 解决的是"机器之间互相证明身份",不是用户登录。别把两者混用。


六、常见配置错误与排查 ​

现象原因处理
证书链不完整漏中间证书按 CA 要求拼全链
证书/私钥不匹配部署错对校验指纹后重配
HTTPS 跳 HTTP反向代理配置服务端 301 + HSTS
内网服务裸 HTTP默认没 TLS内网也该 TLS(防局域网嗅探)
证书过了期才发现无监控加提前告警

排查起点:先分清"证书问题"还是"配置问题"。证书问题看有效期/域名/信任链,配置问题看协议版本/重定向/套件。


七、自检清单 ​

  • [ ] 生产只开 TLS 1.2+,禁掉所有旧协议
  • [ ] 证书自动续期 + 提前 30 天告警
  • [ ] 私钥不进 git、不进镜像、只有运行态可读
  • [ ] HSTS 已灰度上线,确认无 HTTP 残留
  • [ ] 服务间通信明确:信任边界内用什么认证(mTLS / 内网 / token)
  • [ ] 有定期扫描(协议/套件/证书过期)

八、常见误区 ​

误区事实
"HTTPS 就安全了"只保护传输;证书过期、降级、弱套件都可能是洞
"证书不过期就行"还有域名匹配、信任链、吊销状态要查
"内网不用 TLS"局域网同样可被嗅探/中间人
"mTLS 能当登录"它只证明机器身份,不证明用户是谁
"HSTS 一下开到最大"未灰度时可能把自己锁在 HTTPS 之外

九、动手练习 ​

练习 A:扫一次自己的站点 ​

用 ssllabs.com 或 nmap --script ssl-enum-ciphers 扫一个你负责的服务,列出三项需要改的点。

练习 B:配证书自动续期 ​

用 Let's Encrypt + 反向代理给一个测试域名配自动续期,验证到期前 30 天告警链路。

练习 C:HSTS 灰度 ​

先下发 max-age=3600 观察一天,再提升到长期值;记录 HTTP 残留请求,验证 301 到位。


相关文档 ​

本区 ​

其他域 ​