2015-06-07 8 views
5

कुछ वेबसाइटों से कनेक्ट करने का प्रयास करते समय OpenSSL कनेक्ट करने में विफल रहता है। मैं OpenSSL के s_client के साथ इस त्रुटि मिलती है:ओपनएसएसएल त्रुटि चेतावनी हैंडशेक विफलता

$ openssl s_client -connect www.airvistara.com:443 -debug 
CONNECTED(00000003) 
write to 0x600060cf0 [0x600076e90] (346 bytes => 346 (0x15A)) 
0000 - 16 03 01 01 55 01 00 01-51 03 03 b7 94 61 d2 52 ....U...Q....a.R 
0010 - 8e fa c5 5e 3d d0 0b 62-91 14 c3 21 d5 62 3a e8 ...^=..b...!.b:. 
0020 - 27 1c 99 12 0c e8 1d e8-ea cf 15 00 00 b4 c0 30 '..............0 
0030 - c0 2c c0 28 c0 24 c0 14-c0 0a 00 a5 00 a3 00 a1 .,.(.$.......... 
0040 - 00 9f 00 6b 00 6a 00 69-00 68 00 39 00 38 00 37 ...k.j.i.h.9.8.7 
0050 - 00 36 00 88 00 87 00 86-00 85 c0 32 c0 2e c0 2a .6.........2...* 
0060 - c0 26 c0 0f c0 05 00 9d-00 3d 00 35 00 84 c0 2f .&.......=.5.../ 
0070 - c0 2b c0 27 c0 23 c0 13-c0 09 00 a4 00 a2 00 a0 .+.'.#.......... 
0080 - 00 9e 00 67 00 40 00 3f-00 3e 00 33 00 32 00 31 [email protected]?.>.3.2.1 
0090 - 00 30 00 9a 00 99 00 98-00 97 00 45 00 44 00 43 .0.........E.D.C 
00a0 - 00 42 c0 31 c0 2d c0 29-c0 25 c0 0e c0 04 00 9c .B.1.-.).%...... 
00b0 - 00 3c 00 2f 00 96 00 41-c0 11 c0 07 c0 0c c0 02 .<./...A........ 
00c0 - 00 05 00 04 c0 12 c0 08-00 16 00 13 00 10 00 0d ................ 
00d0 - c0 0d c0 03 00 0a 00 15-00 12 00 0f 00 0c 00 09 ................ 
00e0 - 00 ff 02 01 00 00 73 00-0b 00 04 03 00 01 02 00 ......s......... 
00f0 - 0a 00 3a 00 38 00 0e 00-0d 00 19 00 1c 00 0b 00 ..:.8........... 
0100 - 0c 00 1b 00 18 00 09 00-0a 00 1a 00 16 00 17 00 ................ 
0110 - 08 00 06 00 07 00 14 00-15 00 04 00 05 00 12 00 ................ 
0120 - 13 00 01 00 02 00 03 00-0f 00 10 00 11 00 23 00 ..............#. 
0130 - 00 00 0d 00 20 00 1e 06-01 06 02 06 03 05 01 05 .... ........... 
0140 - 02 05 03 04 01 04 02 04-03 03 01 03 02 03 03 02 ................ 
0150 - 01 02 02 02 03 00 0f 00-01 01      .......... 
read from 0x600060cf0 [0x60007c3f0] (7 bytes => 7 (0x7)) 
0000 - 15 03 03 00 02 02 28        ......(
2348672:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handsha 
failure:s23_clnt.c:769: 
... 

मेरे मजबूत बिंदु तो कुछ मार्गदर्शन की सराहना की जाएगी SSL के साथ नहीं है। क्लाइंट सॉफ्टवेयर लगभग सभी साइटों के साथ काम करता है लेकिन कुछ ऐसे हैं जो इस त्रुटि को देते हैं।

+0

स्टैक ओवरफ़्लो प्रोग्रामिंग और विकास प्रश्नों के लिए एक साइट है। यह प्रश्न ऑफ़-विषय प्रतीत होता है क्योंकि यह प्रोग्रामिंग या विकास के बारे में नहीं है। सहायता केंद्र में [मैं यहां कौन से विषय पूछ सकता हूं] देखें (http://stackoverflow.com/help/on-topic)। शायद [सुपर उपयोगकर्ता] (http://superuser.com/) या [सूचना सुरक्षा स्टैक एक्सचेंज] (http://security.stackexchange.com/) पूछने के लिए एक बेहतर जगह होगी। यह भी देखें [मैं देव ओप्स के बारे में प्रश्न कहां पोस्ट करूं?] (Http://meta.stackexchange.com/q/134306)। – jww

+1

अपने प्रश्न का उत्तर देने के लिए, एसएनआई के साथ टीएलएस 1.0 या ऊपर का उपयोग करें। अपेक्षित कार्य निम्नानुसार हैं: 'openssl s_client- कनेक्ट करें www.airvistara.com:443 -tls1 -servername www.airvistara.com'। '-सर्वरनाम' एसएनआई एक्सटेंशन को सूचीबद्ध करता है। – jww

उत्तर

3

क्लाइंट सॉफ्टवेयर लगभग सभी साइटों के साथ काम करता है लेकिन कुछ ऐसे हैं जो इस त्रुटि को देते हैं।

जैसा कि टिप्पणी की गई है - यदि आप SNI का उपयोग करते हैं तो आपको यह त्रुटि नहीं मिलती है।

एसएनआई सभी आधुनिक ब्राउज़रों द्वारा समर्थित है, लेकिन इसके बाहर यह जावा के पुराने संस्करणों (जेडीके 6 तक), पायथन (2.7.9 तक) के साथ समर्थित नहीं है, एंड्रॉइड आदि पर कुछ सामान्य रूप से प्रयुक्त पुस्तकालयों के साथ

चूंकि एसएनआई अधिक से अधिक आवश्यकता है (क्लाउडफ्लेयर फ्रीएसएसएल केवल एसएनआई के साथ काम करता है) क्लाइंट सॉफ़्टवेयर को एसएनआई समर्थन प्राप्त करने के लिए तय किया जाना चाहिए।

+0

धन्यवाद जे और स्टीफन, इसने मेरे प्रश्न का उत्तर दिया। – Toblakai

+1

एक और सवाल। आपने एसएनआई का मुद्दा कैसे तय किया था? – Toblakai

+1

जैसा कि आप 'openssl s_client' आउटपुट से देख सकते हैं, यह '-ervername' विकल्प के बिना विफल रहता है और इसके साथ सफल होता है। इसके अलावा मेरे पास एसएसएल विश्लेषकों https://github.com/noxxi/p5-ssl-tools/blob/master/analyze-ssl.pl के लिए अपना स्वयं का टूल है। यह (अन्य चीजों के साथ) देता है: 'एसएसएल अपग्रेड एसएनआई के बिना विफल रहता है'। –

2

उपयोग इस विधि ...

$ openssl s_client -connect www.example.com:443 -servername www.example.com 
    CONNECTED(00000003) 
    ... 
     Cipher : ECDHE-ECDSA-AES128-GCM-SHA256 

यह हो सकता है कि -servername विकल्प OpenSSL 0.9.8 के साथ उपलब्ध नहीं है, लेकिन यह OpenSSL 1.0.1 के साथ होना चाहिए।

संबंधित मुद्दे