ssl_prefer_server_ciphers

`ssl_prefer_server_ciphers` 指令控制在 SSL/TLS 连接中使用的加密套件的优先级。 — NGINX HTTP Core

ssl_prefer_server_ciphers
httpserver
语法ssl_prefer_server_ciphers on | off;
默认值off
上下文http, server
模块NGINX HTTP Core
参数flag

说明

`ssl_prefer_server_ciphers` 指令在 NGINX 中指定在建立 SSL/TLS 连接时,是否应优先使用服务器首选的加密套件列表而不是客户端的偏好。默认情况下,SSL/TLS 握手过程允许客户端根据其偏好选择用于保护连接的加密套件。不过,某些安全策略可能要求服务器对实际选择的加密套件拥有最终决定权,尤其是为了强制使用更强或更稳定的加密方法。 当该指令设置为 'on' 时,NGINX 会忽略客户端支持的加密套件列表,而从服务器定义的列表中为连接选择最强的套件。若设置为 'off',服务器将尊重客户端的偏好,如果客户端偏好较弱的加密套件,可能会导致使用较弱的加密。该指令对于通过在握手过程中防止客户端降级到不太安全的加密套件,从而保持服务器的安全姿态非常有用。

配置示例

ssl_prefer_server_ciphers on;

确保你的密码套件列表已正确配置;否则,如果没有可用的兼容密码套件,可能会导致连接失败。

将此指令设置为 'on' 可能会导致客户端无法连接,尤其是在它们不支持你偏好的强加密算法时。