首页/安全/加密与证书速查/套件选择与服务端偏好
TLS 与 HTTPS60 条

套件选择与服务端偏好

TLS 1.2 由客户端提交套件列表、服务端可配置优先级;TLS 1.3 固定使用少数 AEAD 套件,且顺序由客户端偏好决定,服务端无法自定义组合。

加密与证书速查安全更新于 2026-10-12
TLS 1.2客户端列表加服务端偏好(ssl_prefer_server_ciphers),需显式排除 CBC 等旧组合
TLS 1.3套件固定为 AES-GCM 与 ChaCha20 的 SHA-256/384 组合,证书认证在签名算法中另行协商
nginxssl_ciphers 只作用于 1.2;1.3 套件不受其影响
查看现状openssl ciphers 查看本机语义,配合 s_client 验证实际协商

查看与限定套件

查看与限定套件
openssl ciphers -v 'ECDHE+AESGCM:ECDHE+CHACHA20' | head -10
openssl ciphers -v 'DEFAULT' | grep -c 'SSLv3\|RC4\|3DES'
把套件配置拆成两层理解:1.2 白名单受 ssl_ciphers 控制,1.3 交给协议默认集合,排查时就不再困惑为何配置不生效。

易错点

  • 在 ssl_ciphers 里写 1.3 套件名却不生效,误判为配置错误
  • 以为配置了服务端偏好就能排除所有弱组合,仍需检查客户端可选集合与实现默认值

数据来源与参考

  • RFC 5246 §7.4.1.2(cipher_suites)
  • RFC 8446 §9.1(强制实现的套件)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌