अपाचे एसएसएल प्रमाणपत्र और निजी कुंजी को अलग-अलग फाइलों में क्यों स्टोर करें?


11

SSLCertificateFile और SSLCertificateKeyFile निर्देशों के लिए Apache mod_ssl प्रलेखन बताता है कि एक निजी कुंजी और एक SSL प्रमाणपत्र को एक ही फाइल में संग्रहीत करने के लिए 'दृढ़ता से हतोत्साहित' किया गया है।

अब स्पष्ट रूप से निजी कुंजी फ़ाइल को सुरक्षित रखा जाना चाहिए, लेकिन यह मानते हुए कि मामला है, क्या उसी फ़ाइल में प्रमाण पत्र को संग्रहीत करने में कोई विशिष्ट जोखिम हैं? मैं यह जानने के लिए उत्सुक हूं कि यह व्यवहार क्यों समर्थित है, और फिर भी स्पष्टीकरण के बिना दृढ़ता से हतोत्साहित किया गया।

जवाबों:


15

SSL प्रमाणपत्र फ़ाइल एक ताला है।
एसएसएल सर्टिफिकेट की फाइल इसकी कुंजी है।

दो को एक साथ स्टोर करना आपकी चाबी को आपके सामने वाले दरवाजे पर लॉक करने के लिए टैप करने के बराबर है।
यदि कोई हमलावर एकल फ़ाइल से समझौता करता है, तो उसके पास वह सब कुछ है जो उसे आपकी वेबसाइट (प्रमाण पत्र और निजी कुंजी) को सफलतापूर्वक लागू करने की आवश्यकता है।

यह विशेष रूप से सच है यदि आपके पास अपने एसएसएल कुंजी (कई वेब सर्वर नहीं हैं, तो उन्हें क्रैश की स्थिति में स्वचालित रूप से शुरू करने की अनुमति देने के लिए) पासफ़्रेज़ नहीं है।


आप फ़ाइलों को अलग करके जो बचाव कर रहे हैं, वह एक अपाचे बग है, जिसके कारण यह SSLCertificateFileवेब क्लाइंट को (कुछ ऐसा जो सार्वजनिक रूप से उपलब्ध होना चाहिए) की सामग्री को डंप कर देता है ।
(मेरी जानकारी में ऐसा कोई बग मौजूद नहीं है, या कभी अस्तित्व में है, लेकिन अपाचे सॉफ्टवेयर का एक बड़ा, जटिल टुकड़ा है। यह पूरी तरह से संभव है।)

यदि Apache इस फ़ाइल को डंप कर देती है और इसमें सभी SSL प्रमाणपत्र (लॉक) होते हैं तो कोई समस्या नहीं है: हर किसी को उस प्रमाणपत्र की एक प्रति मिलती है जब वे सर्वर पर किसी भी तरह SSL अनुरोध करते हैं।
यदि फ़ाइल में कुंजी है और साथ ही आपने सुरक्षा के किसी भी मौके को उड़ा दिया है - आपका संपूर्ण एन्क्रिप्शन मॉडल समझौता कर लिया है, और आपको चाबियाँ बदलने की आवश्यकता है।


धन्यवाद, सैद्धांतिक बग जो वेब सर्वर को सार्वजनिक प्रमाणपत्र के साथ निजी कुंजी की सेवा करने का कारण बनता है, मेरा सबसे अच्छा अनुमान भी था। मैं वास्तव में इस बात से सहमत नहीं हूं कि एक ही फाइल में की और सर्टिफिकेट लगाना सामने वाले दरवाजे की चाबी को टैप करने के बराबर है, लेकिन समान रूप से, मैं इसे करने के लिए एक अच्छे कारण के बारे में नहीं सोच सकता।
वोर्टुरा

1
यह संभवतः दरवाजे की कुंजी को टैप करने जितना बुरा नहीं है - शायद दरवाजे की चोटी पर चाबी चिपकाने के करीब है, या उन छिपी-की-चट्टानों में से एक का उपयोग करना :-)
voretaq7

7

ओपनएसएसएल के पुराने संस्करणों को दो अलग-अलग फ़ाइलों (सार्वजनिक और निजी) की आवश्यकता थी। अन्य क्रिप्टो इंजन के पुराने संस्करणों को एक एकल फ़ाइल (एक ही फ़ाइल में दोनों) की आवश्यकता थी। संगतता की "भावना" (उर्फ "असंगति और प्रमाणपत्र के दो सेटों को बनाए रखने के बारे में व्यवस्थापक की व्हाट्सिंग), अब दोनों का समर्थन करते हैं।

एक ही फाइल में दोनों प्रमाणपत्रों (कुंजी श्रृंखला) को संग्रहीत करने से हतोत्साहित किया जाता है क्योंकि विभिन्न प्रमाणपत्रों में अलग-अलग स्कोप होते हैं। यह एक तकनीकी एक की तुलना में अधिक स्थिरता का मुद्दा है, जहां सार्वजनिक प्रमाण पत्र में सार्वजनिक रूप से पठनीय फ़ाइल अनुमतियाँ होनी चाहिए, और निजी के लिए इसके विपरीत। आपके सार्वजनिक प्रमाणपत्र को आपके सिस्टम पर लॉक और कुंजी के तहत रखने में कोई खतरा नहीं है, यह सिर्फ अपने उद्देश्य से असंगत है।

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