Ich versuche, mit OpenSSL eine Verbindung zu einem SSL-Server herzustellen.
Wenn ich renne:
openssl s_client -connect myhost.com:443
Die folgenden SSL-Client-Konfigurationen funktionieren einwandfrei:
- Windows (
OpenSSL 0.9.83e 23 Feb 2007
) - Linux (
OpenSSL 0.9.8o 01 Jun 2010
) - Linux (
OpenSSL 1.0.0-fips 29 Mar 2010
)
Die Ausgabe einer erfolgreichen Verbindung sieht folgendermaßen aus:
New, TLSv1/SSLv3, Cipher is DES-CBC3-SHA
Server public key is 2048 bit
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1
Cipher : DES-CBC3-SHA
Session-ID: (hidden)
Session-ID-ctx:
Master-Key: (hidden)
Key-Arg : None
Krb5 Principal: None
PSK identity: None
PSK identity hint: None
Start Time: 1337266099
Timeout : 300 (sec)
Verify return code: 0 (ok)
Wenn ich jedoch einen Client mit meinem Ubuntu 12.04 (w / OpenSSL 1.0.1 14 Mar 2012
) verwende, erhalte ich folgende Fehlermeldung:
CONNECTED(00000003)
...:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:177:
Wie kann ich das lösen?
Alle Tipps werden sehr geschätzt!
New, TLSv1/SSLv3, Cipher is DES-CBC3-SHA
. Ich wünschte, ich hätte verstanden, was das alles bedeutet! :)Antworten:
Dies scheint ein bekanntes Problem mit Ubuntus 1.0.1 OpenSSL zu sein: https://bugs.launchpad.net/ubuntu/+source/openssl/+bug/965371
Es sieht nicht so aus, als ob ein Fix verfügbar wäre. Wenn möglich, können Sie ein Downgrade auf 1.0.0 durchführen.
Versuchen
openssl s_client -tls1 -connect myhost.com:443
quelle
Dieser Fehler kann durch eine ältere Version von openssl verursacht werden, wenn die Verschlüsselung nicht erneut ausgehandelt werden kann (ich habe ein selbstsigniertes Zertifikat mit elliptischen Kurven generiert).
Insbesondere habe ich unter MacOS den gleichen Fehler mit der Standardeinstellung openssl - 0.9.8zh erhalten
Nach der Installation der Brew-Version OpenSSL 1.0.2f ist der Fehler behoben:
quelle
Wenn dieses Problem bei einem Java-HTTPS-Server auftritt, der unter OpenJDK ausgeführt wird, versuchen Sie
/etc/java-7-openjdk/security/java.security
, die Zeile zu bearbeiten und zu kommentierenwie von Christoph W entdeckt .
quelle