我有一个仅在TLS 1.0(.NET Framework 3.5)下运行的 Client Y ,并且我有一个在Linux(Java 1.8)下运行的 Service X )与NGINX一起使用,该工具仅接受与TLS 1.2的连接。
Client Y (TLS 1.0) ---> calls ---> Service X (TLS 1.2 over Nginx).
这是我的NGINX配置:
# HTTPS server
server {
listen 80;
listen 443 ssl;
server_name myapi.com.br;
ssl_certificate /etc/pki/tls/certs/myfile.cer;
ssl_certificate_key /etc/pki/tls/private/myfile.key;
ssl_session_timeout 5m;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://localhost:8080/;
proxy_ssl_session_reuse off;
proxy_set_header Host $host;
proxy_redirect off;
}
}
但是它没有用,客户端Y不能调用服务X,但是另一个使用TLS 1.2的客户端Z可以调用服务X。
这是nginx中的错误:
2019/08/06 11:23:18 [crit] 25199#0: *253185 SSL_shutdown() failed (SSL: error:140E0197:SSL routines:SSL_shutdown:shutdown while in init) while SSL handshaking, client: 10.31.68.186, server: 0.0.0.0:443