proxy_ssl_verify
指令 `proxy_ssl_verify` 控制对代理连接的 SSL 证书验证。 — NGINX HTTP Core
proxy_ssl_verify
httpserverlocation
语法proxy_ssl_verify on | off;
默认值off
上下文http, server, location
模块NGINX HTTP Core
参数flag
说明
指令 `proxy_ssl_verify` 在 NGINX 中用于指定在与被代理服务器建立连接时是否应执行 SSL 证书验证。该指令可以接受一个标志参数,'on' 启用验证,'off' 禁用验证。默认情况下,如果未指定此指令,SSL 验证为关闭('off')。启用时,NGINX 将使用系统的 SSL 库将目标服务器的 SSL 证书与受信任的证书颁发机构(CAs)进行验证,以确保证书的有效性。这一步对于依赖安全连接的应用非常关键,因为它确保证书有效且未被篡改或吊销,从而保护用户免受中间人攻击。 在配置此指令时,还应考虑信任链 —— 即从服务器证书到受信任根 CA 的路径。如果验证过程需要中间 CA 证书,应在相应的配置中提供它们。如果 SSL 验证失败,NGINX 将拒绝与被代理服务器的连接并记录错误信息,便于管理员采取相应措施。因此,在生产环境中使用 `proxy_ssl_verify` 时,建议仔细管理 SSL 证书及其信任链。
配置示例
location /api {
proxy_pass https://backend-server;
proxy_ssl_verify on;
proxy_ssl_trusted_certificate /etc/ssl/certs/ca-certificates.crt;
}⚠
确保已安装并正确配置相关 CA certificates,以便 SSL 验证成功。
⚠
如果 SSL 验证失败,NGINX 将拒绝连接,如果处理不当,可能导致服务中断。
⚠
在将设置从 'off' 切换到 'on' 时要小心,以避免意外的验证失败。测试时始终验证证书。