首页/安全/加密与证书速查/TLS 1.2 套件选择与配置
TLS 与 HTTPS60 条

TLS 1.2 套件选择与配置

TLS 1.2 套件繁多,配置原则是:优先 ECDHE(前向保密)、AEAD(GCM/ChaCha20)、SHA-256 及以上,禁用 CBC/3DES/RC4/匿名套件。

加密与证书速查安全更新于 2026-10-13

TLS 1.2 套件怎么选

TLS 1.2 的可用套件数量庞大,配置原则可归纳为三点:密钥交换优先 ECDHE(提供前向保密)、加密模式优先 AEAD(GCM 或 ChaCha20-Poly1305)、哈希使用 SHA-256 及以上。同时明确禁用 RC4、3DES、EXPORT、匿名套件与静态 RSA,并确认套件与证书类型匹配。

基本信息

推荐列表ECDHE-ECDSA 或 ECDHE-RSA 搭配 AES-GCM 与 ChaCha20-Poly1305
禁用项RC4、3DES、DES、EXPORT、aNULL、静态 RSA(条件允许时)
顺序控制ssl_prefer_server_ciphers 决定是否按服务端偏好排序
证书匹配ECDSA 套件需 ECDSA 证书,RSA 套件需 RSA 证书
验证方式openssl ciphers -v 与 s_client 实际协商结果
遗留风险CBC 类套件涉及填充与时间侧信道历史问题

典型使用场景

  • 新站点上线:直接采用 ECDHE + AEAD 白名单,避免默认宽松配置
  • 合规扫描整改:按扫描报告的套件清单逐项收敛
  • 老客户端兼容:在保留可用性的前提下优先剔除最弱组合
  • 证书类型调整:从 RSA 证书迁移到 ECDSA 证书时同步调整套件顺序
  • 故障排查:握手失败时核对两端套件交集是否为空

nginx 配置片段

nginx 配置片段
# 只保留 ECDHE 与 AEAD 组合,去掉 CBC、3DES、静态 RSA
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305;
ssl_prefer_server_ciphers on;
# 验证:确认实际协商结果中没有 CBC
openssl s_client -connect example.com:443 -tls1_2 </dev/null 2>/dev/null | grep -E 'Cipher|Server Temp Key'
# 查看本机 OpenSSL 实际支持的可用套件,避免配置了不存在的名字
openssl ciphers -v 'ECDHE+AESGCM' | head -6

组合取舍

组合前向保密建议
ECDHE + AES-GCM有首选,兼容性与性能均衡
ECDHE + ChaCha20-Poly1305有无 AES 加速的客户端优先
ECDHE + CBC有尽量避免,缺少完整性保护
RSA 密钥传输 + AEAD无禁用,长期私钥泄漏可解密历史流量
RC4 / 3DES / EXPORT / NULL无必须禁用
套件列表里只要还留着 CBC,部分扫描工具就会报出 Lucky13 或历史填充类风险;同样,保留静态 RSA 套件会让前向保密形同虚设。收敛后务必用 s_client 或外部扫描复核实际协商结果,配置文本与生效结果经常不一致。
套件与证书必须匹配:只有 ECDSA 证书时把 ECDSA 套件写在前面是对的,但同时保留 RSA 套件也无害(客户端会按证书类型协商);反之若把不匹配的套件强排首位,部分客户端会直接握手失败。

易错点

  • 证书与套件不匹配:ECDSA 证书配 RSA 专用套件会握手失败,反之亦然
  • 只改列表不验证生效结果:系统 OpenSSL 版本与发行版策略会过滤套件,需用 s_client 实证
  • 把 1.2 的套件字符串复制到 1.3 配置:命名与配置项都不同,写了也不生效
  • 为兼容老客户端保留 3DES:64 位分组存在 Sweet32 类风险,应优先寻找替代方案
  • 忽略顺序的影响:启用服务端偏好时,顺序决定高并发下实际使用的算法与性能表现

数据来源与参考

  • RFC 5289(ECC 套件)
  • RFC 7905(ChaCha20-Poly1305 套件)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌