用 curl 做校园网认证,相同得命令在本地可以正常运行,在 openwrt 上出现以下报错:
curl: (35) ssl_handshake returned - mbedTLS: (-0x7B00) SSL - Processing of the ServerKeyExchange handshake message failed
有大佬知道是怎么回事吗?
说明:
root@OpenWrt:~# openssl s_client -connect https://***.***.edu.cn
78801CB67F000000:error:10080002:BIO routines:BIO_lookup_ex:system lib:crypto/bio/bio_addr.c:738:Unrecognized service
connect:errno=22
1
1423 2023-08-23 23:55:53 +08:00
用静态编译的 curl 试试
|
2
tyzandhr 2023-08-23 23:59:34 +08:00 via Android
看看 openert 上 ssl 版本?虽然我猜校园网也不会用太新的 tls 协议才对
|
4
wwzzj OP @tyzandhr 这是因为用了 TLSv1.3 的原因吗?
TLSv1.3 (OUT), TLS handshake, Client hello (1): * CAfile: /etc/ssl/certs/ca-certificates.crt * CApath: none * TLSv1.3 (IN), TLS handshake, Server hello (2): * TLSv1.2 (IN), TLS handshake, Certificate (11): * TLSv1.2 (IN), TLS handshake, Server finished (14): * TLSv1.2 (OUT), TLS handshake, Client key exchange (16): * TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1): * TLSv1.2 (OUT), TLS handshake, Finished (20): * TLSv1.2 (IN), TLS handshake, Finished (20): |
6
yinmin 2023-08-24 00:51:38 +08:00
(1) curl 加--tlsv1.0 或者--tlsv1.2 参数试试
curl https://**.edu.cn --tlsv1.2 (2) 你的 openssl 的指令错了,应该是: openssl s_client -connect ***.edu.cn:443 |
7
vsyf 2023-08-24 01:44:52 +08:00 via Android
10 年前我也是在 openwrt 搞校园网客户端,我们那时候还是用的锐捷。转眼过去这么久了
|