有人遇到过 tsl 握手就发了一个 Client hello 过去

2023-06-28 00:54:43 +08:00
 lidashuang
*   Trying 198.18.1.214:443...
* Connected to nocode.com (198.18.1.214) port 443 (#0)
* ALPN: offers h2
* ALPN: offers http/1.1
*  CAfile: /etc/ssl/cert.pem
*  CApath: none
* (304) (OUT), TLS handshake, Client hello (1):
* error:02FFF036:system library:func(4095):Connection reset by peer
* Closing connection 0
curl: (35) error:02FFF036:system library:func(4095):Connection reset by peer
CONNECTED(00000005)
write to 0x6000003e60d0 [0x6000013e00d0] (194 bytes => 194 (0xC2))
0000 - 16 03 03 00 bd 01 00 00-b9 03 03 bd 85 61 3e 14   .............a>.
0010 - d7 c6 c7 d3 0a 36 32 1c-9e 05 13 d4 21 6d 72 9f   .....62.....!mr.
0020 - 30 d9 b3 49 9b cb 73 f9-d4 86 0c 00 00 5c cc a9   0..I..s......\..
0030 - cc a8 cc aa c0 30 c0 2c-c0 28 c0 24 c0 14 c0 0a   .....0.,.(.$....
0040 - 00 9f 00 6b 00 39 ff 85-00 c4 00 88 00 81 00 9d   ...k.9..........
0050 - 00 3d 00 35 00 c0 00 84-c0 2f c0 2b c0 27 c0 23   .=.5...../.+.'.#
0060 - c0 13 c0 09 00 9e 00 67-00 33 00 be 00 45 00 9c   .......g.3...E..
0070 - 00 3c 00 2f 00 ba 00 41-c0 11 c0 07 00 05 00 04   .<./...A........
0080 - c0 12 c0 08 00 16 00 0a-00 ff 01 00 00 34 00 0b   .............4..
0090 - 00 02 01 00 00 0a 00 0a-00 08 00 1d 00 17 00 18   ................
00a0 - 00 19 00 23 00 00 00 0d-00 18 00 16 08 06 06 01   ...#............
00b0 - 06 03 08 05 05 01 05 03-08 04 04 01 04 03 02 01   ................
00c0 - 02 03                                             ..
read from 0x6000003e60d0 [0x600002af8260] (5 bytes => -1 (0xFFFFFFFFFFFFFFFF))
write:errno=54
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 194 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : 0000
    Session-ID:
    Session-ID-ctx:
    Master-Key:
    Start Time: 1687884614
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
---
1086 次点击
所在节点    问与答
12 条回复
lidashuang
2023-06-28 00:55:20 +08:00
问了下 chatgpt

根据这些信息可以初步判断 HTTPS 连接失败的原因:

- errno=54 表示连接被重置,或者是远程主机强迫关闭了连接。

- no peer certificate available 表示对端证书不可用。

- No client certificate CA names sent 表示客户端并未发送证书 CA 名称。

- SSL handshake has read 0 bytes and written 194 bytes 表示 SSL 握手在读取 0 个字节后写入了 194 个字节。

- New, (NONE), Cipher is (NONE)说明未使用加密方法。

- SSL-Session 是握手结果的描述,显示了使用的协议版本、加密套件等信息。在这里,可以看到加密握手失败,协议版本为 TLSv1.2 。

综合以上信息,可能的原因有:

- SSL 证书与域名不匹配。
- SSL 证书未被正确安装或配置。
- 连接被重置,或者远程主机关闭了连接。
- 加密协议版本或加密套件不可被接受或支持。
- 连接中间存在防火墙或代理,导致握手失败。

可以根据具体业务需要,针对以上原因逐步排查。例如,可以检查服务器和客户端的配置和证书是否正确,查看服务器和客户端的日志,以及其他相关配置项,如 cipher suites 、protocols 和 certificates 等。
Trim21
2023-06-28 00:58:29 +08:00
Connection reset by peer

合理怀疑被墙了
lidashuang
2023-06-28 01:09:21 +08:00
描述下场景

这个请求走了 Surge + wireguard
我换了 clash 也是类似结果
Jirajine
2023-06-28 02:01:38 +08:00
就是你的代理程序没有返回任何数据包。
tcp 握手成功其实只是代理服务器返回的,实际连接可能根本没建立。
0o0O0o0O0o
2023-06-28 07:45:01 +08:00
wireguard MTU 调小
yaott2020
2023-06-28 08:51:39 +08:00
会不会是你节点的问题
jucelin
2023-06-28 08:57:06 +08:00
我也遇到过,但没有解决

在 10.*.*.* 网络上访问 192.168.*.* 上的 API ,抓包发现发送完 client hello 之后,就得不到回应了,然后就重试了几次就 reset 掉了,而且是偶发的,不知道哪里的原因。
sujin190
2023-06-28 09:52:47 +08:00
远程服务器 reset 了,你这种情况就很多了啊,单看这个没用吧
lidashuang
2023-06-28 13:35:45 +08:00
@yaott2020
@sujin190
部分网站有问题(比如走 aliyun 负载均衡网站), 应该不是节点的问题


@0o0O0o0O0o
lidashuang
2023-06-28 13:42:07 +08:00
@0o0O0o0O0o 哥牛逼啊, 我 mtu 设置错了
sujin190
2023-06-28 13:46:41 +08:00
@lidashuang #9 那估计就是受防火墙的影响了,话说我看你这个域名 ping 是 101.37.205.135 ,你这个 198.18.1.214 内网 ip 是咋回事? dns 解析是错的话也会这样的
lidashuang
2023-06-29 02:11:20 +08:00
@sujin190 走了 surge 的增强模式

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

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

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

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

© 2021 V2EX