संपादित करें: सर्वर फॉल्ट पर यह पूछना बेहतर हो सकता है, लेकिन मेरी प्रतिष्ठा मुझे 2 से अधिक लिंक पोस्ट करने नहीं देगी। :(कौन सा प्रमाणपत्र श्रृंखला फ़ाइल स्वयं हस्ताक्षरित प्रमाणपत्र के साथ शामिल करने के लिए?
मैं, कुछ पृष्ठ हैं जो सुरक्षित होने की अपनी वेबसाइट पर पासवर्ड की आवश्यकता चाहते हैं, तो मैं this पीछा एक कस्टम SSL प्रमाणपत्र बनाने के लिए। मैं भी पीछा किया this क्योंकि यह बताते हैं कि कैसे स्व-हस्ताक्षरित प्रमाण पत्र मल्टीडोमेन उत्पन्न करने के लिए (subjectAltName
मुझे example.com और * .example.com के लिए एक वैध प्रमाणपत्र प्राप्त करने की अनुमति देता है, मुझे ऐसा करने का कोई और तरीका नहीं मिला)
इसलिए मुझे जो चाहिए था उसे प्राप्त करने के लिए मुझे आदेशों को मिश्रण करना पड़ा, और मुझे लगता है कि सब कुछ है ठीक है मैंने जो किया (ठीक है, मैं इसे बाद में विस्तारित कर दूंगा)।
अब मुझे पोर्ट 443 पर प्रश्नों को सुनने और अनुसूचित पृष्ठों पर एसएसएल सुरक्षा प्रदान करने के लिए अपाचे को कॉन्फ़िगर करना होगा। इसलिए मुझे this मिला।
जब परिभाषित करने VirtualHost 443 पोर्ट पर सुन रहा है, यह कहना है कि यह:
<VirtualHost 127.0.0.1:443>
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/something.crt
SSLCertificateKeyFile /etc/apache2/ssl/something.key
SSLCertificateChainFile /etc/apache2/ssl/gd_bundle.crt
...
</VirtualHost>
मुझे लगता है कि मैं जानता हूँ कि मैं फ़ाइलों SSLCertificateFile
और SSLCertificateKeyFile
क्षेत्रों के लिए निर्दिष्ट करने की आवश्यकता नहीं है क्या, लेकिन मैं आंकड़ा नहीं कर पा रहे SSLCertificateChainFile
क्या है। सब कुछ मैं गूगल और स्टैक एक्सचेंज समुदायों पर खोज कर मुझे अब तक मदद नहीं की द्वारा पाया, तो मैं यह स्पष्ट यहाँ पूछ रहा हूँ:
क्या फ़ाइल मैं SSLCertificateChainFile
लिए प्रदान करना चाहिए, और मैं इसे कैसे बना सकता हूँ अगर जरूरत?
यहां दी गई फाइलें हैं जिन्हें मैंने अलग-अलग लिंक के निर्देशों का पालन करके बनाया है, जिन आदेशों का मैंने उन्हें उपयोग किया था।
- प्रमाणपत्र प्राधिकरण कुंजी (ca.key):
openssl genrsa -des3 -out ca.key 1024
- कुंजी का प्रमाणपत्र (ca.san.csr):
openssl req -new -key ca.key -out ca.san.csr -config /etc/ssl/openssl.cnf
यहाँ मैं कॉन्फ़िग फ़ाइल पथ निर्दिष्ट किया है क्योंकि मैं इसे जोड़ने के लिए एक छोटा सा बदलना पड़ाsubjectAltName
। मैं यह भी जांच सकता था किopenssl req -text -noout -in ca.san.csr
के साथ सब ठीक हो गया। सब कुछ here वर्णित है। - प्रमाण पत्र का निर्माण और हस्ताक्षर (ca.san.crt):
openssl x509 -req -days 3650 -in ca.san.csr -signkey ca.key -out ca.san.crt -extensions v3_req -extfile /etc/ssl/openssl.cnf
फिर, conf फ़ाइल की आवश्यकता है क्योंकिsubjectAltNames
इसमें परिभाषित किया गया है। - सर्वर कुंजी (server.key):
openssl genrsa -out server.key 1024
- कुंजी का प्रमाणपत्र (server.san.csr):
openssl req -new -key server.key -out server.san.csr -config /etc/ssl/openssl.cnf
- सर्वर प्रमाणपत्र (server.san.crt):
openssl x509 -days 3650 -CA ca.san.crt -CAkey ca.key -set_serial 01 -in server.san.csr -req -out server.san.crt
के लिए SSLCertificateFile
, मैंने सोचा कि मैं server.san.crt
फ़ाइल प्रदान करूंगा, यह मेरे लिए सबसे तार्किक बात है, साथ ही SSLCertificateKeyFile
के लिए फ़ाइल प्रतीत होता है।
SSLCertificateChainFile
.crt
फ़ाइल के लिए पूछताछ करता है, इसलिए यह केवल .crt
फ़ाइल है जो मेरे पास है, ca.san.crt
, लेकिन मुझे वास्तव में इसके बारे में निश्चित नहीं है।
क्या किसी के पास कुछ संकेत है?
इसे पढ़ने के लिए आपके समय के लिए धन्यवाद।
समाधान
इस विशेष मामले के लिए, के बाद से मैं एक कस्टम प्रमाण पत्र का उपयोग कर रहा, SSLCertificateChainFile
ज्यादा मतलब नहीं है (नीचे चिह्नित जवाब देखें)। इस प्रकार, आपको केवल दोनों निर्देशों के लिए एक ही प्रमाणपत्र फ़ाइल निर्दिष्ट करना है, SSLCertificateFile
और SSLCertificateChainFile
।
SSL*
निर्देशों का उपयोग करने से पहले अपाचे के साथ आपको केवल एक चीज करने की आवश्यकता है। एसएसएल को अपाचे पर डिफॉल्ट रूप से अक्षम किया गया है, इसलिए आपको sudo a2enmod ssl
के साथ इसे सक्षम करने की आवश्यकता है, या अपाचे को पुनरारंभ करते समय आपको एक त्रुटि मिलेगी कि आपने अपनी vHosts फ़ाइलों में कुछ गलत तरीके से गलत लिखा होगा।
एक बार ऐसा करने के बाद और सर्वर को पुनरारंभ करने के बाद आप HTTPS के साथ अपने vHosts पर कनेक्ट हो सकते हैं। आपका ब्राउज़र आपको बताएगा कि प्रमाणपत्र मान्य नहीं है क्योंकि यह स्वयं हस्ताक्षरित है, लेकिन आपका कनेक्शन सुरक्षित होगा।
मैं कोशिश करूँगा और प्रतिक्रिया दें ASAP, धन्यवाद। – qreon
ठीक है तो ऐसा लगता है: यह काम करता है। मैं अतिरिक्त जानकारी के बारे में विवरण के लिए ओपी संपादित करूंगा। लिंक के लिए भी धन्यवाद, मैं इसके बारे में कुछ करूँगा। – qreon