Ich richte einen stunnel
Server unter Windows XP ein und erhalte diesen Fehler, wenn ein Client versucht, darauf zuzugreifen:
2013.02.14 00:02:16 LOG7[8848:7664]: Service [https] accepted (FD=320) from 107.20.36.147:56160
2013.02.14 00:02:16 LOG7[8848:7664]: Creating a new thread
2013.02.14 00:02:16 LOG7[8848:7664]: New thread created
2013.02.14 00:02:16 LOG7[8848:9792]: Service [https] started
2013.02.14 00:02:16 LOG5[8848:9792]: Service [https] accepted connection from 107.20.36.147:56160
2013.02.14 00:02:16 LOG7[8848:9792]: SSL state (accept): before/accept initialization
2013.02.14 00:02:16 LOG7[8848:9792]: SSL alert (write): fatal: handshake failure
2013.02.14 00:02:16 LOG3[8848:9792]: SSL_accept: 1408A10B: error:1408A10B:SSL routines:SSL3_GET_CLIENT_HELLO:wrong version number
2013.02.14 00:02:16 LOG5[8848:9792]: Connection reset: 0 byte(s) sent to SSL, 0 byte(s) sent to socket
2013.02.14 00:02:16 LOG7[8848:9792]: Local socket (FD=320) closed
2013.02.14 00:02:16 LOG7[8848:9792]: Service [https] finished (0 left)
Irgendeine Idee, was man dagegen tun soll? Ich habe online gelesen, dass dies bedeuten könnte, dass mein Server Werbung dafür macht, dass er in SSL3 kommunizieren kann, aber tatsächlich nicht. Wenn dies zutrifft, würde ich gerne wissen, wie ich das beheben kann. Ich bearbeite die stunnel.conf
Datei, habe aber keine Ahnung, was ich daran ändern soll, um dies zu beheben.
AKTUALISIEREN:
Die obige Fehlermeldung wird nur angezeigt, wenn der Twilio-Client (dh der Twilio-Server) versucht, auf meinen Server zuzugreifen. Wenn ich versuche, mit einem meiner Computer auf meinen Server zuzugreifen, wird die Seite angezeigt. Nach dem Anzeigen des Inhalts zeigt Chrome die Seite etwa 30 Sekunden lang als "Laden" an. Am Ende stunnel
wird folgende Meldung angezeigt:
transfer: s_poll_wait: TIMEOUTclose exceeded: closing
AKTUALISIEREN:
Hier ist die Wireshark-Erfassung: https://gist.github.com/cool-RR/4963477
Cap-Datei: https://dl.dropbox.com/u/1927707/wireshark.cap
Beachten Sie, dass der Server auf Port 8088 ausgeführt wird.
AKTUALISIEREN:
Hier ist das Protokoll vom Server (mit Debug = 7):
2013.02.17 17:06:52 LOG7[7636:2092]: No limit detected for the number of clients
2013.02.17 17:06:52 LOG5[7636:2092]: stunnel 4.54 on x86-pc-msvc-1500 platform
2013.02.17 17:06:52 LOG5[7636:2092]: Compiled/running with OpenSSL 1.0.1c-fips 10 May 2012
2013.02.17 17:06:52 LOG5[7636:2092]: Threading:WIN32 SSL:+ENGINE+OCSP+FIPS Auth:none Sockets:SELECT+IPv6
2013.02.17 17:06:52 LOG5[7636:2092]: Reading configuration from file stunnel.conf
2013.02.17 17:06:52 LOG5[7636:2092]: FIPS mode is enabled
2013.02.17 17:06:52 LOG7[7636:2092]: Compression not enabled
2013.02.17 17:06:52 LOG7[7636:2092]: Snagged 64 random bytes from C:\Documents and Settings\User/.rnd
2013.02.17 17:06:52 LOG7[7636:2092]: Wrote 1024 new random bytes to C:\Documents and Settings\User/.rnd
2013.02.17 17:06:52 LOG7[7636:2092]: PRNG seeded successfully
2013.02.17 17:06:52 LOG6[7636:2092]: Initializing service [https]
2013.02.17 17:06:52 LOG7[7636:2092]: Certificate: G:\Dropbox\StartSSL\SSL Cert.pem
2013.02.17 17:06:52 LOG7[7636:2092]: Certificate loaded
2013.02.17 17:06:52 LOG7[7636:2092]: Key file: G:\Dropbox\StartSSL\SSL Cert.pem
2013.02.17 17:06:52 LOG7[7636:2092]: Private key loaded
2013.02.17 17:06:52 LOG7[7636:2092]: Could not load DH parameters from G:\Dropbox\StartSSL\SSL Cert.pem
2013.02.17 17:06:52 LOG7[7636:2092]: Using hardcoded DH parameters
2013.02.17 17:06:52 LOG7[7636:2092]: DH initialized with 2048-bit key
2013.02.17 17:06:52 LOG7[7636:2092]: ECDH initialized with curve prime256v1
2013.02.17 17:06:52 LOG7[7636:2092]: SSL options set: 0x03000004
2013.02.17 17:06:52 LOG5[7636:2092]: Configuration successful
2013.02.17 17:06:52 LOG7[7636:2092]: Service [https] (FD=268) bound to 0.0.0.0:8088
2013.02.17 17:07:08 LOG7[7636:2092]: Service [https] accepted (FD=320) from 54.242.25.199:45922
2013.02.17 17:07:08 LOG7[7636:2092]: Creating a new thread
2013.02.17 17:07:08 LOG7[7636:2092]: New thread created
2013.02.17 17:07:08 LOG7[7636:8004]: Service [https] started
2013.02.17 17:07:08 LOG5[7636:8004]: Service [https] accepted connection from 54.242.25.199:45922
2013.02.17 17:07:08 LOG7[7636:8004]: SSL state (accept): before/accept initialization
2013.02.17 17:07:08 LOG7[7636:8004]: SSL alert (write): fatal: handshake failure
2013.02.17 17:07:08 LOG3[7636:8004]: SSL_accept: 1408A10B: error:1408A10B:SSL routines:SSL3_GET_CLIENT_HELLO:wrong version number
2013.02.17 17:07:08 LOG5[7636:8004]: Connection reset: 0 byte(s) sent to SSL, 0 byte(s) sent to socket
2013.02.17 17:07:08 LOG7[7636:8004]: Local socket (FD=320) closed
2013.02.17 17:07:08 LOG7[7636:8004]: Service [https] finished (0 left)
AKTUALISIEREN:
Antworten:
Sie sollten eine Netzwerkerfassung durchführen und sehen, warum sie abgelehnt wurde. Überprüfen Sie auch die Protokolle an beiden Endpunkten.
debug
Erhöhen Sie den Füllstand im Stunnel conf.Sie müssen eine Netzwerkablaufverfolgung durchführen, um herauszufinden, welche Version des SSL-Protokolls der Client unterstützt. Stellen Sie dann sicher, dass Ihr Server auch diese Version unterstützt.
Quelle
Bitte beachten Sie, dass das SSL-Protokoll vor einigen Jahren aufgrund eines Sicherheitsfehlers bei der Neuverhandlung geändert wurde. Siehe CVE-2009-3555 und diese Seite zur SSL-Neuverhandlung
Der Server antwortet mit:
Sie müssen die Protokolle auf dem SSL-Server überprüfen, um festzustellen, warum die Verbindung abgelehnt wurde. Versuchen Sie, das SSL-Debugging auf dem Stunnel zu aktivieren mit :
debug=7
.Der
stunnel
Server hatoptions = NO_SSLv3
, aber der Client versucht, eine Verbindung mit SSLv3 herzustellen. Sie müssen den Client aktualisieren, um eine neuere Version von SSL zu unterstützen, oder Sie müssen diestunnel
Konfiguration ändern , um SSLv3 zu akzeptieren.quelle
fips = no
verringern Sie die Sicherheit, indem Sie stunnel.confDies kann eine Nichtübereinstimmung der SSL-Version zwischen dem Client und dem Server sein. Stellen Sie sicher, dass der Client nur für SSL3 konfiguriert ist, indem Sie ältere SSL-Versionen auf dem Client deaktivieren.
quelle