Nginx client timed out while SSL handshaking 问题

2018-03-16 14:24:21 +08:00
 Itanium
2018/03/16 13:29:25 [info] 24306#24306: *3 client timed out (110: Connection timed out) while SSL handshaking, client: x.x.x.x, server: 0.0.0.0:443

在 nginx 的错误日志里看到这个报错,奇怪的是 nginx 的 log level 显示这是个 [info] 级别的。按理说这应该是一个 [error]。 然而我在某些 IP 下无法访问网站,我用代理就能连上,但是在多数网络下测试直连是可以连上的。 我测试过应该和后端无关,即使只是静态页面也是这样。

nginx 的 ssl 配置:

server {
    listen *:443 ssl http2;
    listen [::]:443 ssl http2;
    server_name xxx.com;

    ssl on;
    ssl_certificate /ssl/letsencrypt/chained.pem;
    ssl_certificate_key /ssl/letsencrypt/domain.key;
    ssl_dhparam /ssl/letsencrypt/dhparams.pem;
    ssl_trusted_certificate /ssl/letsencrypt/full_chained.pem;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
    ssl_session_cache shared:SSL:50m;
    ssl_session_timeout 1d;
    ssl_session_tickets off;
    ssl_prefer_server_ciphers on;
    # ssl_stapling on;
    # ssl_stapling_verify on;
}

后来即使我只保留

    ssl_certificate /ssl/letsencrypt/chained.pem;
    ssl_certificate_key /ssl/letsencrypt/domain.key;

这几个必要配置也不行 证书是 letsencrypt 的证书,服务器上有多个 https 站点

求从报错分析可能出现这个异常的原因,或者提供一些 debug 排错的思路,谢谢

3820 次点击
所在节点    NGINX
2 条回复
hsyan2008
2018-03-28 10:38:21 +08:00
找到解决方法了吗,我也碰到这个问题,很诡异啊
Itanium
2018-03-28 15:49:31 +08:00
@hsyan2008
搜遍网路都没有完全解决,一开始以为是 SNI 的问题,但是确认了 Nginx 版本是绝对支持 SNI 的,客户端也支持( Chrome 65 ),而且换 Safari 和 Waterfox 都一样。
这个问题奇怪在只有某固定 IP 是这样的,换个 IP 在同样的环境下就一切正常,而且确定了 IP 没被墙,HTTP 是可以访问的,HTTPS 不行,所以实在搞不懂了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/438647

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX