curl:(35) 错误:1408F10B:SSL 例程:ssl3_get_record:版本号错误 [英] curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number

查看:1164
本文介绍了curl:(35) 错误:1408F10B:SSL 例程:ssl3_get_record:版本号错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我尝试使用 curl(或 libcurl)连接到任何服务器(例如 google.com)时,我收到错误消息:

When I try to connect to any server (e.g. google.com) using curl (or libcurl) I get the error message:

curl:(35) 错误:1408F10B:SSL 例程:ssl3_get_record:版本号错误

curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number

详细输出:

$ curl www.google.com --verbose  
* Rebuilt URL to: www.google.com/  
* Uses proxy env variable no_proxy == 'localhost,127.0.0.1,localaddress,.localdomain.com'  
* Uses proxy env variable http_proxy == 'https://proxy.in.tum.de:8080'  
*   Trying 131.159.0.2...  
* TCP_NODELAY set  
* Connected to proxy.in.tum.de (131.159.0.2) port 8080 (#0)  
* successfully set certificate verify locations:  
*   CAfile: /etc/ssl/certs/ca-certificates.crt  
  CApath: none  
* TLSv1.3 (OUT), TLS handshake, Client hello (1):  
* error:1408F10B:SSL routines:ssl3_get_record:wrong version number  
* Closing connection 0  
curl: (35) error:1408F10B:SSL routines:ssl3_get_record:wrong version number'  

出于某种原因,curl 似乎使用 TLSv1.3,即使我通过命令 --tlsv1.2 强制它使用 TLSv1.2(它仍然会打印 TLSv1.3 (OUT), ..."我正在使用 Curl 和 OpenSSL 的最新版本:

For some reason curl seems to use TLSv1.3 even if I force it to use TLSv1.2 with the command --tlsv1.2 (it will still print TLSv1.3 (OUT), ..." I am using the newest version of both Curl and OpenSSL :

$ curl -V  
curl 7.61.0-DEV (x86_64-pc-linux-gnu) libcurl/7.61.0-DEV OpenSSL/1.1.1 zlib/1.2.8  
Release-Date: [unreleased]  
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp  
Features: AsynchDNS IPv6 Largefile NTLM NTLM_WB SSL libz TLS-SRP UnixSockets HTTPS-proxy  

我认为这是与我的程序安装有关的问题.有人可以向我解释此错误消息的含义吗?

I think this is a problem related to my installation of the programms. Can somebody explain to me what this error message means?

推荐答案

* Uses proxy env variable http_proxy == 'https://proxy.in.tum.de:8080'   
                                         ^^^^^

https:// 错误,应该是http://.即使目标 URL 是 HTTPS,代理本身也应该通过 HTTP 而不是 HTTPS 访问.尽管如此,代理仍将正确处理 HTTPS 连接并保持端到端加密.请参阅 HTTP CONNECT 方法 了解如何完成此操作的详细信息.

The https:// is wrong, it should be http://. The proxy itself should be accessed by HTTP and not HTTPS even though the target URL is HTTPS. The proxy will nevertheless properly handle HTTPS connection and keep the end-to-end encryption. See HTTP CONNECT method for details how this is done.

这篇关于curl:(35) 错误:1408F10B:SSL 例程:ssl3_get_record:版本号错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆