![TLS 密码套件排序](https://linux22.com/image/790958/TLS%20%E5%AF%86%E7%A0%81%E5%A5%97%E4%BB%B6%E6%8E%92%E5%BA%8F.png)
我已nginx
配置为使用ssl_ciphers PROFILE=SYSTEM;
。
我已将 Alma Linux 配置为使用DEFAULT
加密策略:
~$ update-crypto-policies --show
DEFAULT
来自RHEL 9 文档:
DEFAULT
默认的系统范围加密策略级别为当前威胁模型提供了安全设置。它允许使用 TLS 1.2 和 1.3 协议以及 IKEv2 和 SSH2 协议。如果 RSA 密钥和 Diffie-Hellman 参数的长度至少为 2048 位,则可以接受它们。
到目前为止一切顺利。这正是我想要的 - 对 也使用系统范围的加密策略nginx
。
问题在于此配置提供的密码顺序。列表中的“较旧”密码排在第一位,较新的密码(具有前向保密性)排在后面。这意味着,如果客户端支持(并且几乎所有客户端都支持)列表开头的一些较旧的密码套件,nginx
则将ssl_prefer_server_ciphers on;
选择该密码,而不是列表中较靠后的较强密码之一。
我想到的一个解决方案是在配置ssl_prefer_server_ciphers off;
中进行切换nginx
。然后,将使用来自客户端的排序,而不是来自服务器的排序。这是一个好主意吗?