proxy_ssl_ciphers

指令 `proxy_ssl_ciphers` 在 NGINX 中用于为被代理的 SSL 连接设置可接受的密码套件列表。 — NGINX HTTP Core

proxy_ssl_ciphers
httpserverlocation
语法proxy_ssl_ciphers STRING;
默认值HIGH:!aNULL:!MD5
上下文http, server, location
模块NGINX HTTP Core
参数1

说明

当 NGINX 作为 SSL/TLS 连接的反向代理时,`proxy_ssl_ciphers` 指令对于建立安全连接至关重要。通过指定该指令,管理员可以控制在与上游服务器进行 SSL 握手时使用哪些密码套件。该功能不仅通过允许使用强密码套件来增强安全性,还可以满足特定客户端要求或合规性要求以实现兼容性。 `proxy_ssl_ciphers` 指令接受的值是一个密码套件列表,可遵循 OpenSSL 密码套件字符串格式。它可以包含具体的密码套件和密码套件组,应根据期望的安全性和性能级别来定义。在配置该指令时,确保该列表是最新的并尽量减少不安全的密码套件以防范旧算法中的漏洞非常重要。 该指令可以放在包括 `http`、`server` 和 `location` 在内的不同上下文中,允许根据 NGINX 配置层级的不同,在广泛或细粒度上控制 SSL 配置。对该指令的调整通常需要重启或重载 NGINX 服务才能生效。

配置示例

server {
    location / {
        proxy_pass https://backend;
        proxy_ssl_ciphers 'HIGH:!aNULL';
    }
}

确保所指定的密码套件被 NGINX 使用的 OpenSSL 版本支持。

使用弱密码套件可能会使应用程序暴露于安全漏洞之中。

测试更改对 SSL/TLS 连接建立的影响对于避免服务中断至关重要。