gpt4 book ai didi

nginx 反向代理的 SSL 握手问题

转载 作者:太空宇宙 更新时间:2023-11-03 13:17:53 27 4
gpt4 key购买 nike

我在预先打包的码头服务器前设置了 http 反向代理。码头服务器是一个预配置的应用程序,不是很灵活。此 Jetty 服务器将仅接受 SSL 请求。

我已将 nginx 配置为使用其自己的 SSL 证书在 443 上监听 SSL 流量。然后在 nginx 后面,我在另一台运行码头服务器的机器上有另一个服务器,在端口 443 上有自己的证书。

我的 Nginx 配置如下所示,

server 
{
listen 443;
server_name _;
ssl on;
ssl_certificate cc_net.pem;
ssl_certificate_key cc_net.key;

ssl_session_timeout 5m;

ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
location /rest/api/box/get_user_info {
proxy_pass https://fssdemo.cc.net/rest/api/box/get_user_info?external=true&server=$host;
}
location /rest/api/box/is_running {
proxy_pass https://fssdemo.cc.net/rest/api/box/is_running;
}
location / {
root html;
index index.html index.htm;
}
}

如果我在 https 上访问我的码头服务器,我会得到一个 502,错误的网关。

错误日志报告:

2014/04/10 08:52:48 [error] 648#0: *1 SSL_do_handshake() failed (SSL: error:100AE081:elliptic curve routines:EC_GROUP_new_by_curve_name:unknown group error:1408D010:SSL routines:SSL3_GET_KEY_EXCHANGE:EC lib) while SSL handshaking to upstream, client: 172.16.9.140, server: _, request: "GET /rest/api/box/is_running HTTP/1.1", upstream: "https://<54.221.108.189:443>/rest/api/box/is_running", host: "ext.cc.net"

我在上面的错误日志里放了<>,不允许我发带IP的链接。

从上面我可以看出,这是说从我的代理到我的码头主机的 ssl 连接失败了。

如果我直接浏览到目标,在 https 和端口 443 上,它工作得很好。

我想知道其中一个是否可以解决代理问题?但是,当连接到它的目标时,我如何强制 nginx 使用 ssl 呢?

谢谢

最佳答案

错误可能是您的 openssl 宣布了比它支持的更多的椭圆曲线,然后服务器选择了一个不受支持的曲线。参见 https://bugzilla.redhat.com/show_bug.cgi?id=1019390 .您需要升级您的 openssl。

关于nginx 反向代理的 SSL 握手问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22978149/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com