OpenSSL क्रोम द्वारा दिखाए गए विभिन्न एसएसएल प्रमाणपत्र लौटाता है


13

निम्नलिखित कमांड के साथ ओपनएसएसएल का उपयोग करते हुए स्पार्कफुन की सीडीएन यूआरएल को क्वेरी करते समय:

openssl s_client -showcerts -connect dlnmh9ip6v2uc.cloudfront.net:443

प्रमाणपत्र में दिया गया सामान्य नाम है *.sparkfun.com, जो सत्यापित करने में विफल रहता है, लेकिन यदि आप Chrome में होस्ट लोड करते हैं, तो दिखाया गया सामान्य नाम है*.cloudfront.net

यहाँ क्या हो रहा है?

यह एक समस्या पैदा कर रहा है क्योंकि मैं स्क्वीड SSL_Bump के माध्यम से SSL प्रॉक्सी में पर्यावरण हूं, जो डोमेन के लिए मेरे स्थानीय विश्वसनीय CA द्वारा हस्ताक्षरित एक प्रमाण पत्र बनाता है। यह सभी डोमेन के लिए काम करता है, लेकिन उपरोक्त, क्योंकि CN मेल से मेल नहीं खाता है क्योंकि OpenSSL का उपयोग करके नया प्रमाणपत्र तैयार किया गया है।

EDIT - मैंने ओपन डेटा के साथ एक दूरस्थ डेटा केंद्र के सर्वर पर वैरीफाइड किया है, जिसका सीधा संबंध इंटरनेट से है, जिसमें कोई प्रॉक्सी या फ़िल्टरिंग शामिल नहीं है।

EDIT - मुद्दा SNI के कारण है, जैसा कि स्वीकार किया गया है, लेकिन यह जानकारी भरने के लिए कि यह स्क्वीड और SSL_Bump के साथ समस्या का कारण बनता है:

यह परियोजना मूल सर्वर के लिए एसएसएल सर्वर नेम इंडिकेशन (एसएनआई) सूचना को अग्रेषित करने का समर्थन नहीं करेगी और इस तरह के समर्थन को थोड़ा और मुश्किल बना देगी। हालांकि, एसएनआई अग्रेषण की अपनी गंभीर चुनौतियां हैं (इस दस्तावेज़ के दायरे से परे) जो कि आगे की कठिनाइयों को दूर करती हैं।

से लिया गया: http://wiki.squid-cache.org/Features/BumpSslServerFirst

जवाबों:


23

CloudFront SNI का उपयोग करती है, एक ही IP पर कई प्रमाणपत्रों का उपयोग करने में सक्षम होने का एक तरीका है। सभी आधुनिक ब्राउज़र इसका समर्थन करते हैं, जैसा कि Opensl का s_client कमांड करता है, लेकिन s_client जादुई रूप से ऐसा नहीं करता है। आपको इसे उपयोग करने के लिए बताना होगा:

openssl s_client -servername dlnmh9ip6v2uc.cloudfront.net  -connect dlnmh9ip6v2uc.cloudfront.net:443 -showcerts

2
याये डेनिस, यह मेरा " ऊह, मुझे नहीं पता था कि " आज एसएफ के लिए हल किया गया है, और यह अभी तक 9 बजे भी नहीं है! मुझ से +1।
मध्याह्न

9

Chrome SNI का समर्थन करता है , सर्वर को बताता है कि किस प्रमाणपत्र को भेजना है। s_clientआदेश नहीं करता है।

CloudFront के यहाँ SNI के उपयोग का अधिक विवरण है

जब आप एसएनआई कस्टम एसएसएल का उपयोग करते हैं, तो कुछ उपयोगकर्ता आपकी सामग्री तक पहुंचने में सक्षम नहीं हो सकते हैं क्योंकि कुछ पुराने ब्राउज़र एसएनआई का समर्थन नहीं करते हैं और आपकी सामग्री के HTTPS संस्करण को लोड करने के लिए CloudFront के साथ कनेक्शन स्थापित करने में सक्षम नहीं होंगे। एसएनआई पर अधिक जानकारी के लिए, समर्थित ब्राउज़रों की सूची सहित, कृपया हमारे FAQ पृष्ठ पर जाएँ ।

तथा:

एसएनआई कस्टम एसएसएल ट्रांस लेयर सिक्योरिटी प्रोटोकॉल के एसएनआई एक्सटेंशन पर निर्भर करता है, जो कई डोमेन को उसी आईपी पते पर एसएसएल ट्रैफिक की सेवा करने की अनुमति देता है जिसमें होस्टनाम दर्शक शामिल होने की कोशिश कर रहे हैं। समर्पित IP कस्टम SSL के साथ, CloudFront प्रत्येक Amazon CloudFront एज स्थान से सामग्री वितरित करता है और समर्पित IP कस्टम SSL सुविधा के समान सुरक्षा के साथ। एसएनआई कस्टम एसएसएल अधिकांश आधुनिक ब्राउज़रों के साथ काम करता है, जिसमें क्रोम संस्करण 6 और बाद में (विंडोज एक्सपी और बाद में या ओएस एक्स 10.5.7 और बाद में चल रहा है), सफारी संस्करण 3 और बाद में (विंडोज विस्टा और बाद में या मैक ओएस एक्स 10.5 पर चल रहा है)। 6. और बाद में), फ़ायरफ़ॉक्स 2.0 और बाद में, और इंटरनेट एक्सप्लोरर 7 और बाद में (विंडोज विस्टा और बाद में चल रहा है)। पुराने ब्राउज़र जो SNI का समर्थन नहीं करते हैं वे आपकी सामग्री के HTTPS संस्करण को लोड करने के लिए CloudFront के साथ एक कनेक्शन स्थापित नहीं कर सकते हैं।



मेरे द्वारा वैसे भी +1, उत्कृष्ट प्रलेखन के कारण।
मध्याह्न

मैंने कहा s_clientथा कि मैं सीएलआई का समर्थन नहीं करता। मैंने कहा s_client(ओपी में) कमांड नहीं है।
डेविड श्वार्ट्ज

@DavidSchwartz - वास्तव में मेरा ओपनएसएसएल क्लाइंट एसएनआई का समर्थन करता है और मैं यहां वर्णित जानकारी का उपयोग करके सत्यापित कर सकता हूं।
ज्योफ्री

@Geoffrey मैं सहमत हूँ। यह ओपी में कमांड है जो एसएनआई का समर्थन नहीं करता है।
डेविड श्वार्ट्ज
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.