Wenn ich versuche, mit curl (oder libcurl) eine Verbindung zu einem Server (z. B. google.com) herzustellen, wird folgende Fehlermeldung angezeigt:
curl: (35) Fehler: 1408F10B: SSL-Routinen: ssl3_get_record: falsche Versionsnummer
Ausführliche Ausgabe:
$ 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'
Aus irgendeinem Grund scheint Curl TLSv1.3 zu verwenden, auch wenn ich es erzwinge, TLSv1.2 mit dem Befehl --tlsv1.2 zu verwenden (es wird weiterhin TLSv1.3 (OUT) gedruckt, ... "Ich verwende die neueste Version von Curl und 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
Ich denke, dies ist ein Problem im Zusammenhang mit meiner Installation der Programme. Kann mir jemand erklären, was diese Fehlermeldung bedeutet?
Einfache Antwort
Wenn Sie sich hinter einem Proxyserver befinden, stellen Sie den Proxy auf Curl ein. Die Locke kann keine Verbindung zum Server herstellen, daher wird die falsche Versionsnummer angezeigt. Stellen Sie den Proxy ein, indem Sie subl ~ / .curlrc öffnen oder einen anderen Texteditor verwenden. Fügen Sie dann der Datei die folgende Zeile hinzu: proxy = proxyserver: proxyport Zum Beispiel proxy = 10.8.0.1:8080
Wenn Sie sich nicht hinter einem Proxy befinden, stellen Sie sicher, dass die curlrc-Datei nicht die Proxy-Einstellungen enthält.
quelle
Wenn jemand diesen Fehler mit Nginx erhält, fügen Sie Ihrer Serverkonfiguration Folgendes hinzu:
Das Problem ist darauf zurückzuführen, dass Nginx einen HTTP-Server für einen Client bereitstellt, der HTTPS an dem von Ihnen abgehörten Port erwartet. Wenn Sie
ssl
in derlisten
Direktive angeben , löschen Sie dies auf der Serverseite.quelle
Einfacher in einer Zeile:
proxy = 192.168.2.1: 8080; curl -v example.com
z.B. $ proxy = 192.168.2.1: 8080; curl -v example.com
xxxxxxxxx-ASUS: ~ $ proxy = 192.168.2.1: 8080; curl -v https: //google.com | head -c 15% Gesamt% Empfangen% Xferd Durchschnittliche Geschwindigkeit Zeit Zeit Zeit Aktueller Download Upload Gesamt ausgegebene linke Geschwindigkeit 0 0 0 0 0 0 0 0 -: -: - -: -: - -: -: - 0
quelle