繁体   English   中英

Nginx proxy_ssl_certificate无法按预期工作

[英]Nginx proxy_ssl_certificate not working as expected

我正在使用nginx作为后端服务器的代理。 后端服务器还使用nginx并使用ssl_client_certificatessl_verify_client指令来强制客户端证书认证。

在我的nginx服务器中,设置以下内容:

location  /proxy {
    proxy_pass             https://www.backend.com;

    proxy_set_header       X-Forwarded-Host $host;
    proxy_set_header       X-Forwarded-Server $host;
    proxy_set_header       X-Forwarded-For $proxy_add_x_forwarded_for;

    proxy_ssl_certificate      /etc/nginx/cert/client.crt;
    proxy_ssl_certificate_key  /etc/nginx/cert/client.key;
}

根据Nginx的文档

但是,后端仍以400响应代码"No required SSL certificate was sent"响应。

请注意,使用带有客户端证书的wget向后端服务器发出请求时,我得到一个有效的200 OK响应:

wget --certificate=/etc/nginx/cert/client.crt --private-key=/etc/nginx/cert/client.key https://www.backend.com

我的Nginx配置中缺少什么?

这篇文章似乎为我解决了这个问题。

我必须添加以下设置才能使一切正常。

proxy_ssl_server_name      on;

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM