Curl: (35) SSL-Verbindungsfehler

8

Ich versuche, eine cURL-HTTPS-Anfrage an die Twitter-API zu senden, und es wird folgende Fehlermeldung angezeigt:

[root@webscoming httpdocs]# curl -v https://api.twitter.com
About to connect() to api.twitter.com port 443 (#0)
Trying 199.16.156.199... connected
Connected to api.twitter.com (199.16.156.199) port 443 (#0)
Initializing NSS with certpath: sql:/etc/pki/nssdb
CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
NSS error -5990
Closing connection #0
SSL connect error
curl: (35) SSL connect error

Ich habe dies von einem anderen Server aus versucht und es funktioniert wie erwartet. Was bedeutet dieser Fehler und wie behebe ich ihn?

Auf meinem Server wird CentOS Version 6.5 ausgeführt.

Bitte beachten Sie: Ich kann mich korrekt verbinden, https://encrypted.google.comaber erfolglos mit https://api.twitter.com.

Alexandru Trandafir Catalin
quelle
Könnte es einen Webproxy geben, der zum Fehlschlagen führt?

Antworten:

20

Ich habe ein ähnliches Problem gesehen, aber nicht auf Twitter zugegriffen.
Das Problem, das ich gesehen habe, war RHEL 6.1 -> RHEL 6.4, bei dem Curl verwendet wurde, um auf eine REST-API zuzugreifen. Curl zeigte Fehler: Curl: (35) SSL-Verbindungsfehler

Das Problem war schließlich, dass unser Server, auf dem die REST-API ausgeführt wird, RHEL 6.6 war und eine neuere Version von NSS verwendete. Nach dem Upgrade der Client-NSS-Version war Curl erfolgreich.

Wir haben den Client aktualisiert von: nss-3.12.10-2.el6_1.x86_64

bis: nss-3.16.1-14.el6

John Matthews
quelle
dito. Der (Satelliten-) Server wurde zwischen den Läufen vom (RHEL 6.5) -Client aktualisiert. konnte nichts aktualisieren, bis dies getan wurde.
Otheus
4

Laut Quellcode bedeutet dieser Fehler eine Zeitüberschreitung. Ihre Netzwerkverbindung zu diesem Host ist höchstwahrscheinlich fehlerhaft. Es kann auch sein, dass Twitter Ihre IP aus irgendeinem Grund herausfiltert.

liquidat
quelle
Dies sieht aus wie die neue URL für den Quellcode dxr.mozilla.org/mozilla-central/source/nsprpub/pr/include/…
Nobu
0

cURL-Fehlernummer 35 hat mit einer veralteten cURL-Version zu tun.

Um dies zu beheben, müssen Sie Ihr cURL-Paket aktualisieren.

nyedidikeke
quelle
Wie Update dieses Problem lösen? ** 35 bedeutet SSL-Verbindungsfehler. Das SSL-Handshake ist fehlgeschlagen. **
Asktyagi
@asktyagi: Welches Betriebssystem verwenden Sie? CentOS? Ubuntu? Welche Version? Was ist die Version Ihrer cURL-Bibliothek?
Nyedidikeke
@nyedidikeke bis jetzt dachte ich, dass das wahr ist, aber jetzt weiß ich, dass das nicht mehr der Fall ist, da ich gerade mit curlimages/curl:latestVersion
alexus
@alexus: Du hast recht. Der cURL-Fehler 35 scheint insbesondere bei "älteren Versionen" aufgetreten zu sein und erforderte das dann wundersame "Update" als Korrektur aufgrund von Pfad- oder Berechtigungsproblemen. Bei einer neueren Version kann dies dieselbe Ursache sein, genau wie bei Problemen mit dem Dateiformat oder den Kennwörtern, um nur einige zu nennen. Können Sie bitte weitere Details zu Ihrem Umgebungs-Setup, dem spezifischen Befehlslauf und dem Fehlerpuffer mitteilen?
Nyedidikeke