Nginx ssl_verify_client和proxy_pass

发布时间:2019-09-01 发布网站:脚本之家
脚本之家收集整理的这篇文章主要介绍了Nginx ssl_verify_client和proxy_pass脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有2个Nginx服务器server1和server2.
server1需要客户端ssl验证.
server2代理对server1的所有请求

问题是当我试图直接从server1访问我的服务时,浏览器询问我的客户端证书,它工作正常

但是从servier2它总是给出错误“400 Bad Request.没有发送所需的SSL证书”

server1 nginx配置是

server {
listen       443;
server_name  server1 ;
ssl on;
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
ssl_client_certificate /etc/nginx/client_keys/keys.crt;
ssl_verify_client on;
ssl_verify_depth 1;
ssl_session_timeout 5m;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
ssl_prefer_server_ciphers on;

location / {
    proxy_pass https://some-service;
}
}

server2 nginx配置是

server {
listen       443  default_server;
server_name  server2;
ssl on;
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
ssl_client_certificate /etc/nginx/client_keys/keys.crt;
location / {
    proxy_pass https://server1;
}
}
最佳答案
目前,nginx不支持.但是有senginx [1],它的代理模块被扩展为支持与源服务器的客户端证书握手.

[1] http://www.senginx.org/en/index.php/Proxy_HTTPS_Client_Certificate

总结

以上是脚本之家为你收集整理的Nginx ssl_verify_client和proxy_pass全部内容,希望文章能够帮你解决Nginx ssl_verify_client和proxy_pass所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:76874919,请注明来意。

脚本之家官方公众号

微信公众号搜索 “ 程序精选 ” ,选择关注!

微信公众号搜索 “ 程序精选 ” ,选择关注!
精选程序员所需精品干货内容!

标签:nginx