2017-03-22 3 views
0

Ich habe eine Server-App, die auf meinem Computer läuft und auf einen bestimmten Port hört. Wenn ich versuche, OpenSSL zu verwenden (auf dem Mac habe ich bereits über brew von der Standard-Mac-Version für OpenSSL aktualisiert).Debugging der SSL-Verbindung mit dem Befehl openssl terminal

openssl s_client -connect 0.0.0.0:80051 -showcerts -prexit -servername localhost -debug 

Antwort

CONNECTED(00000003) 
write to 0x7fe62b41b370 [0x7fe62b80d000] (118 bytes => 118 (0x76)) 
0000 - 16 03 01 00 71 01 00 00-6d 03 01 58 d2 84 72 d5 ....q...m..X..r. 
0010 - 1b d3 47 9c 8e 6b b3 fb-10 a5 21 af 0e 5d 79 7b ..G..k....!..]y{ 
0020 - 54 77 4b 70 11 b0 77 5e-1e 9c e7 00 00 2e 00 39 TwKp..w^.......9 
0030 - 00 38 00 35 00 16 00 13-00 0a 00 33 00 32 00 2f .8.5.......3.2./ 
0040 - 00 9a 00 99 00 96 00 05-00 04 00 15 00 12 00 09 ................ 
0050 - 00 14 00 11 00 08 00 06-00 03 00 ff 01 00 00 16 ................ 
0060 - 00 00 00 0e 00 0c 00 00-09 6c 6f 63 61 6c 68 6f .........localho 
0070 - 73 74 00 23          st.# 
0076 - <SPACES/NULS> 
read from 0x7fe62b41b370 [0x7fe62b812600] (7 bytes => 0 (0x0)) 
85473:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:/BuildRoot/Library/Caches/com.apple.xbs/Sources/OpenSSL098/OpenSSL098-59.60.1/src/ssl/s23_lib.c:185: 
--- 
no peer certificate available 
--- 
No client certificate CA names sent 
--- 
SSL handshake has read 0 bytes and written 118 bytes 
--- 
New, (NONE), Cipher is (NONE) 
Secure Renegotiation IS NOT supported 
Compression: NONE 
Expansion: NONE 
--- 

Auf Server

E0322 10:04:34.017891000 123145312870400 ssl_transport_security.c:947] Handshake failed with fatal error SSL_ERROR_SSL: error:1408A10B:SSL routines:ssl3_get_client_hello:wrong version number. 
E0322 10:04:34.017964000 123145312870400 chttp2_server.c:123] Handshaking failed: {"created":"@1490191474.017913000","description":"Handshake failed","file":"../src/core/lib/security/transport/security_handshaker.c","file_line":274,"tsi_code":10,"tsi_error":"TSI_PROTOCOL_FAILURE"} 

ich ohne -ssl3 und -tls1 in dem Befehl OpenSSL vorbei Erfolg versucht haben. Irgendwelche Gedanken darüber, wie man die Informationen verarbeitet oder die openssl verwendet, um weiter zu debuggen, was zu SSL-Client-Verbindungsproblemen mit dem Server führen könnte. Dank

+2

Ich bezweifle, dass dies ein aktualisiertes OpenSSL ist, zumindest nicht ein OpenSSL mindestens Version 1.0.1. Die Anforderung, die Sie senden, ist die Version TLS 1.0 (hex '03 01'), während das aktuelle OpenSSL TLS 1.2 verwendet. –

+0

ja du hast recht @SteffenUllrich - ich hätte überprüfen sollen: openssl Version zeigt "OpenSSL 0.9.8zh 14 Jan 2016". Bitte antworten Sie mit dem gleichen Kommentar und akzeptieren Sie –

+0

Stack Overflow ist eine Website für Programmier-und Entwicklungsfragen. Diese Frage scheint off-topic zu sein, weil es nicht um Programmierung oder Entwicklung geht. Siehe [Welche Themen kann ich hier fragen?] (Http://stackoverflow.com/help/on-topic) in der Hilfe. Vielleicht [Super User] (http://superuser.com/) oder [Unix & Linux Stack Exchange] (http://unix.stackexchange.com/) wäre ein besserer Ort, um zu fragen. Siehe auch [Wo veröffentliche ich Fragen zu Dev Ops?] (Http://meta.stackexchange.com/q/134306) – jww

Antwort

1

i über Gebräu Upgrade bereits aus der Standard-Mac-Version für OpenSSL ...

0000 - 16 03 01 .... 03 01 

Die Debug-Protokolle zeigt eine Client mit TLS-Version 1.0 (0x0301). Dies deutet darauf hin, dass eine alte Version von OpenSSL verwendet wurde und nicht die aktualisierte Version, da diese Version 1.0.1 (veröffentlicht 2012) TLS 1.2 unterstützt und diese standardmäßig verwenden wird.

+0

danke - ich hatte die neue Version installiert aber nicht verlinkt. –

Verwandte Themen