proxy_ssl_protocols

proxy_ssl_protocols 指令指定在与被代理服务器建立安全连接时接受的 SSL/TLS 协议。 — NGINX HTTP Core

proxy_ssl_protocols
httpserverlocation
语法proxy_ssl_protocols protocol1 [protocol2 ...];
默认值TLSv1 TLSv1.1 TLSv1.2
上下文http, server, location
模块NGINX HTTP Core
参数1+

说明

proxy_ssl_protocols 指令用于定义 NGINX 服务器在通过安全通道连接到被代理后端服务器时将接受哪些版本的 SSL 和 TLS 协议。支持多种协议,例如 TLSv1、TLSv1.1 和 TLSv1.2(或更高版本),可确保代理在所需的安全标准范围内运行。通过指定这些协议,管理员可以通过仅允许与上游服务器通信时使用安全版本来增强 NGINX 配置的安全合规性。 该指令可以放置在 http、server 和 location 上下文中,从而提供配置上的灵活性。例如,某个 NGINX 服务器在为不同服务器上的多个应用提供服务时,可以根据应用需求强制使用不同的 SSL 协议版本。管理员应注意,随着更新的 SSL/TLS 版本发布,弃用更旧且不那么安全的版本被认为是良好做法,以保护敏感数据。该指令的参数是一系列 SSL/TLS 协议版本,至少必须提供一次;如果省略将导致配置无效。

配置示例

location /secure {
    proxy_pass https://backend.example.com;
    proxy_ssl_protocols TLSv1.2;  # Only allow TLSv1.2 for backend connections
}

指定过时或不安全的协议可能会使您的应用程序面临漏洞风险。

所接受的协议必须同时被 NGINX 和上游服务器支持;否则,安全连接可能会失败。

只有在为代理配置了 SSL/TLS 时,此指令才生效。]

请确保在更改后重启或重新加载 NGINX 以使更改生效。