ServBay में थर्ड पार्टी CA से प्राप्त SSL सर्टिफिकेट का उपयोग कैसे करें
जब आप लोकल डेवेलपमेंट या टेस्टिंग के दौरान प्रोडक्शन की तरह का एनवायरनमेंट सिमुलेट करते हैं, तो एक विश्वसनीय थर्ड पार्टी संस्था (CA) द्वारा जारी किया गया SSL सर्टिफिकेट आपकी वेबसाइट को HTTPS के ज़रिए सुरक्षित बनाता है। यह HTTPS डिपेंडेंट फ़ीचर्स के टेस्ट या प्रोडक्शन जैसे माहौल को री-क्रिएट करने के लिए बहुत ज़रूरी है। इस लेख में हम बताएंगे कि ServBay लोकल वेब डेवलपमेंट एनवायरनमेंट में किसी थर्ड पार्टी से जारी हुए SSL सर्टिफिकेट को कैसे सेटअप करें।
कृपया ध्यान दें कि थर्ड पार्टी CA द्वारा जारी किए गए SSL सर्टिफिकेट आमतौर पर केवल स्टैंडर्ड डोमेन एक्सटेंशन (जैसे .com
, .org
, .net
, .cn
आदि) को ही सपोर्ट करते हैं, न कि कस्टम नॉन-स्टैंडर्ड एक्सटेंशन (जैसे .local
, .test
, .demo
आदि) को। क्योंकि इन नॉन-स्टैंडर्ड डोमेनों के लिए पब्लिक वेरिफिकेशन संभव नहीं है। यदि आप ऐसा डोमेन उपयोग करते हैं, तो ServBay का बिल्ट-इन ServBay User CA या ServBay Public CA विकल्प चुनें जिससे आप ट्रस्टेड लोकल SSL सर्टिफिकेट जनरेट कर सकते हैं।
उपयोग के मामले
- प्रोडक्शन एनवायरनमेंट सिमुलेशन: बिल्कुल वैसे ही HTTPS कॉन्फ़िगरेशन के साथ टेस्ट करें जैसे प्रोडक्शन साइट पर यूज़ होती है।
- HTTPS डिपेंडेंट फीचर्स टेस्टिंग: सेफ ब्राउज़र API या विशेष फीचर्स जैसे Service Workers, Web Crypto API, Geolocation आदि का टेस्ट।
- लोकल API डेवेलपमेंट: लोकल रनिंग बैकेंड API के लिए HTTPS सेटअप करें ताकि फ्रंटेंड उससे सुरक्षित तरीके से जुड़े।
आवश्यकताएँ
शुरू करने से पहले यह सुनिश्चित करें:
- आपने macOS पर ServBay इंस्टाल और रन किया है।
- आपको टर्मिनल और कमांड लाइन में बुनियादी जानकारी है।
- सिस्टम में OpenSSL टूल इंस्टॉल है (macOS में आमतौर पर पहले से होता है)।
चरण 1: थर्ड पार्टी SSL सर्टिफिकेट के लिए आवेदन
सबसे पहले, आपको किसी विश्वसनीय थर्ड पार्टी CA (जैसे Let's Encrypt, DigiCert, GlobalSign, Sectigo आदि) से SSL सर्टिफिकेट लेना होगा। इसके लिए सर्टिफिकेट साइनिंग रिक्वेस्ट (CSR) जनरेट करना जरूरी है, यही शुरुआत है इस प्रक्रिया की।
प्राइवेट की बनाएं (Private Key)
प्राइवेट की आपके सर्वर के लिए सबसे संवेदनशील फाइल है, जो SSL ट्रैफ़िक को डिक्रिप्ट करने के काम आती है। इसे सुरक्षित रखें। टर्मिनल में OpenSSL के इस कमांड से एक RSA प्राइवेट की बनाएं:
shopenssl genpkey -algorithm RSA -out servbay.demo.key -pkeyopt rsa_keygen_bits:2048
1openssl genpkey
: OpenSSL कमांड, प्राइवेट की जनरेट करने के लिए।-algorithm RSA
: प्राइवेट की के लिए RSA एल्गोरिदम चुनें।-out servbay.demo.key
: आउटपुट फाइल का नाम तय करें।-pkeyopt rsa_keygen_bits:2048
: की लंबाई 2048 बिट रखें, यह न्यूनतम सुरक्षित साइज है।
CSR (Certificate Signing Request) जनरेट करना
CSR आपकी सार्वजनिक की और जरूरी जानकारी स्टोर करता है, जो CA को भेजी जाती है। पिछली स्टेप में बनी प्राइवेट की से CSR बनाएं:
shopenssl req -new -key servbay.demo.key -out servbay.demo.csr
1openssl req
: OpenSSL कमांड CSR बनाते समय इस्तेमाल होती है।-new
: नया CSR बनाएं।-key servbay.demo.key
: किस प्राइवेट की के आधार पर बने यह बताएं।-out servbay.demo.csr
: आउटपुट फाइल का नाम।
यह कमांड चलाने के बाद सिस्टम आपसे कुछ इनपुट मांगेगा। सही जानकारी दें। उदाहरण के लिए:
Country Name (2 letter code) [AU]:CN # देश का कोड, जैसे CN (चीन), US (USA) State or Province Name (full name) [Some-State]:Hong Kong # राज्य/प्रांत Locality Name (eg, city) []:Kowloon # शहर का नाम Organization Name (eg, company) [Internet Widgits Pty Ltd]:ServBay # संगठन या कंपनी का नाम Organizational Unit Name (eg, section) []:Development # ऑर्गेनाइजेशन यूनिट, ऑप्शनल Common Name (e.g. server FQDN or YOUR name) []:servbay.demo # **मेन डोमेन नाम (FQDN) जरूर सही भरें**। Email Address []:admin@servbay.demo # ईमेल, ऑप्शनल Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: # चैलेंज पासवर्ड (खाली छोड़ दें) An optional company name []: # वैकल्पिक कंपनी नाम (खाली छोड़ दें)
1
2
3
4
5
6
7
8
9
10
11
12Common Name
में वही डोमेन लिखें, जिस पर आप ServBay के भीतर साइट चला रहे हैं (उदा.servbay.demo
)। यदि मल्टीपल डोमेनों के लिए सर्टिफिकेट चाहिए (SAN), तो CA की ओर से अतिरिक्त विकल्प दिए जाते हैं जिसे ऑनलाइन CSR टूल्स के जरिए शामिल किया जा सकता है।CSR सबमिट करें और सर्टिफिकेट प्राप्त करें
Step 2 में बना
servbay.demo.csr
फाइल चुनें और अपने चयनित CA की वेबसाइट पर अपलोड करें। ज़रूरी डोमेन वेरिफिकेशन (DNS रिकॉर्ड, HTTP फाइल या ईमेल के जरिए) की प्रक्रिया पूरी करें। वेरिफिकेशन के बाद CA की तरफ से आपको आमतौर पर ये फाइल्स मिलती हैं:- आपकी मेन सर्टिफिकेट फाइल (
servbay.demo.crt
याservbay.demo.pem
)। - एक या कई इंटरमीडिएट सर्टिफिकेट फाइल्स (सर्टिफिकेट चेन; जैसे
intermediate.crt
,ca-bundle.crt
)। - रूट सर्टिफिकेट (आम तौर पर अलग से इंस्टॉल नहीं करना पड़ता क्योंकि OS/ब्राउज़र में पहले से शामिल होता है)।
- आपकी मेन सर्टिफिकेट फाइल (
चरण 2: ServBay में थर्ड पार्टी SSL सर्टिफिकेट कॉन्फ़िगर करना
थर्ड पार्टी CA से सर्टिफिकेट मिलने के बाद, आपको उसे ServBay में इम्पोर्ट और कॉन्फ़िगर करना होगा ताकि आपकी साइट HTTPS पर चल सके।
ServBay सुझाव देता है कि कस्टम सर्टिफिकेट और प्राइवेट की फाइल्स /Applications/ServBay/ssl/import/tls-certs/
डायरेक्टरी में रखें, जिससे मेनेज करना आसान होगा।
सर्टिफिकेट और प्राइवेट की फाइल्स निर्दिष्ट डायरेक्टरी में मूव करें
चरण 1 में बनी प्राइवेट की (
servbay.demo.key
), CA से मिली मुख्य सर्टिफिकेट (servbay.demo.crt
) और सभी इंटरमीडिएट सर्टिफिकेट्स को इस डायरेक्टरी में रखें:shmv servbay.demo.key /Applications/ServBay/ssl/import/tls-certs/ mv servbay.demo.crt /Applications/ServBay/ssl/import/tls-certs/ # यदि इंटरमीडिएट सर्टिफिकेट चेन फाइल हो तो उसे भी मूव करें mv intermediate.crt /Applications/ServBay/ssl/import/tls-certs/ # अगर अन्य इंटरमीडिएट सर्टिफिकेट हो, # mv another_intermediate.crt /Applications/ServBay/ssl/import/tls-certs/
1
2
3
4
5
6मुख्य और इंटरमीडिएट सर्टिफिकेट्स को जोड़ना (चेन बनाना)
ब्राउज़र सर्टिफिकेट चेन को सही से वेरिफ़ाइ कर सके, इसके लिए सभी इंटरमीडिएट सर्टिफिकेट्स का कंटेन्ट मुख्य सर्टिफिकेट फाइल के एंड में जोड़ दें। चेन की ऑर्डर होती है - पहले आपका मुख्य सर्टिफिकेट, उसके बाद सारे इंटरमीडिएट, अंत में रूट (रूट आमतौर पर दिखाना जरूरी नहीं)। अपने CA की सलाह अनुसार सही ऑर्डर में फाइल्स जोड़ें।
उदाहरण के लिए, अगर इंटरमीडिएट सर्टिफिकेट
intermediate.crt
है:shcat intermediate.crt >> /Applications/ServBay/ssl/import/tls-certs/servbay.demo.crt
1अगर एक से ज्यादा इंटरमीडिएट हैं, तो दिए क्रम से जोड़ें (उदा.
intermediate1.crt
->intermediate2.crt
):shcat intermediate1.crt >> /Applications/ServBay/ssl/import/tls-certs/servbay.demo.crt cat intermediate2.crt >> /Applications/ServBay/ssl/import/tls-certs/servbay.demo.crt
1
2अब
servbay.demo.crt
फाइल में पूर्ण सर्टिफिकेट चेन है।ServBay मैनेजमेंट पैनल खोलें
ServBay ऐप शुरू करें और मेनू बार या Dock में उसका आइकन देख कर पैनल खोलें।
वेबसाइट जोड़ें या एडिट करें
ServBay के मैनेजमेंट पैनल के बाएं साइडबार में
वेबसाइट
चुनें।- नई साइट बनानी हो तो ऊपर दाईं ओर
+
बटन दबाएं। - मौजूदा साइट को एडिट करना है तो उसे चुनें और एडिट (पेंसिल आइकन) पर क्लिक करें।
- नई साइट बनानी हो तो ऊपर दाईं ओर
SSL सर्टिफिकेट कॉन्फ़िगर करें
वेबसाइट कॉन्फ़िगरेशन के SSL सेक्शन में आपको अलग-अलग विकल्प मिलेंगे। यहाँ
Custom
(कस्टम) चुनें।- Certificate Key File (सर्टिफिकेट प्राइवेट की फ़ाइल): ब्राउज़ बटन से
/Applications/ServBay/ssl/import/tls-certs/
चुनें और अपनी प्राइवेट की जैसेservbay.demo.key
चुनें। - Certificate File (सर्टिफिकेट फ़ाइल): ब्राउज़ बटन से उसी डायरेक्टरी में जाएँ, और सभी इंटरमीडिएट के साथ मर्ज की गई मुख्य सर्टिफिकेट फाइल चुनें, जैसे
servbay.demo.crt
।
(नोट: इमेज पाथ एक उदाहरण है, कृपया अपनी दस्तावेज़ साइट का असली पाथ इस्तेमाल करें)
- Certificate Key File (सर्टिफिकेट प्राइवेट की फ़ाइल): ब्राउज़ बटन से
डोमेन और वेबसाइट रूट डायरेक्टरी सेट करें
वेबसाइट पेज पर,
Domain
(डोमेन) फील्ड वहीं भरें जो आपने सर्टिफिकेट आवेदन में लिखा था (उदा.servbay.demo
)। इसी तरह,Document Root
(वेबसाइट रूट डायरेक्टरी) सेट करें, जैसे/Applications/ServBay/www/servbay.demo
।कॉन्फ़िगरेशन सेव और लागू करें
सारी सेटिंग्स पूरी करने के बाद Save बटन दबाएँ। ServBay आपसे पूछेगा कि बदलाव लागू कर के वेब सर्वर (Caddy, Nginx, या Apache) को रीस्टार्ट किया जाए। कॉन्फ़र्म करें।
कॉन्फ़िगरेशन की जाँच करें
अब आप अपने ब्राउज़र में सेट की गई वेबसाइट (जैसे https://servbay.demo
) खोल सकते हैं। अगर सब कुछ सही से किया है, तो ब्राउज़र के एड्रेस बार में लॉक आइकन दिखेगा। इस पर क्लिक कर के आप देख सकते हैं कि सर्टिफिकेट वही है जो आपने इम्पोर्ट किया है और चेन सही है।
अगर कोई दिक्कत आती है, तो यह जाँचें:
- डोमेन नाम सर्टिफिकेट के Common Name या SAN से मेल खाता है या नहीं।
- प्राइवेट की और सर्टिफिकेट फाइल पाथ सही हैं या नहीं।
- सर्टिफिकेट फाइल में पूरी इंटरमीडिएट चेन है या नहीं, और उसका क्रम ठीक है।
- आपने वेबसाइट की सेटिंग सेव और लागू की है या नहीं।
- आपका सिस्टम उस रूट CA पर ट्रस्ट करता है या नहीं (सामान्यतः थर्ड पार्टी CA के रूट सर्टिफिकेट को OS/ब्राउज़र पहले ही ट्रस्ट करते हैं)।
महत्वपूर्ण बिंदु
- डोमेन मेल खाना चाहिए: सर्टिफिकेट और वेबसाइट का डोमेन बिल्कुल मेल खाना चाहिए (यदि सबडोमेन भी है तो भी)।
- सर्टिफिकेट वैलिडिटी: थर्ड पार्टी सर्टिफिकेट्स के समय सीमा होते हैं। एक्सपायरी से पहले इन्हें रिन्यू कर के नई फाइल्स से अपडेट करें।
- प्राइवेट की की सुरक्षा: प्राइवेट की फाइल (.key) बहुत ज़रूरी दस्तावेज़ है, इसे सुरक्षित रखें।
- ServBay के अन्य SSL विकल्प: ServBay और भी आसान SSL सेटिंग्स देता है:
- ServBay User CA / Public CA: किसी भी डोमेन एक्सटेंशन के लिए विश्वसनीय लोकल सर्टिफिकेट बनाने के लिए।
- ACME (Let's Encrypt): स्टैंडर्ड डोमेनों के लिए, ServBay ऑटोमेटिक Let's Encrypt सर्टिफिकेट ला सकता है। ऊपर समझाया गया कस्टम इम्पोर्ट तरीका मुख्यतः तब काम आता है जब आपके पास पहले से थर्ड पार्टी सर्टिफिकेट उपलब्ध है।
अक्सर पूछे जाने वाले सवाल (FAQ)
प्रश्न 1: मुझे .pfx
या .p12
फॉर्मेट में सर्टिफिकेट फाइल मिली है, मैं इसे ServBay में कैसे इस्तेमाल करूं?
उत्तर: .pfx
या .p12
फाइल में अक्सर प्राइवेट की और सर्टिफिकेट चेन एक साथ होती है। OpenSSL की मदद से इसे अलग-अलग प्राइवेट की (.key
) और सर्टिफिकेट (.crt
) में कनवर्ट करें:
sh
openssl pkcs12 -in your_certificate.pfx -nocerts -out your_private_key.key -nodes
openssl pkcs12 -in your_certificate.pfx -clcerts -nokeys -out your_certificate.crt
1
2
2
अगर इंटरमीडिएट सर्टिफिकेट अलग से चाहिए तो वो भी CA की साइट से लेकर Step 2 के मुताबिक .crt
फाइल में जोड़ें।
प्रश्न 2: सब कुछ सेट किया फिर भी ब्राउज़र में “असुरक्षित कनेक्शन” वार्निंग क्यों आती है?
उत्तर: कृपया ये जाँचें:
- डोमेन मैच: ब्राउज़र में जो डोमेन यूज़ कर रहे हैं, वही सर्टिफिकेट में Common Name या SAN में है या नहीं।
- सर्टिफिकेट चेन:
.crt
फाइल में सभी इंटरमीडिएट्स सही क्रम में जोड़ी गई है या नहीं। इसकी जांच के लिए SSL टेस्टिंग टूल ऑनलाइन उपलब्ध हैं। - ServBay रीस्टार्ट: सेटिंग्स सेव के बाद वेब सर्वर को रीस्टार्ट किया गया या नहीं।
- ब्राउज़र कैश: कभी-कभी कैश या कुकीज के कारण पुराने वार्निंग्स दिखते हैं। कैश क्लियर करें या इनकॉग्निटो मोड में देखें।
- सिस्टम ट्रस्ट: क्या आपका सिस्टम उस रूट CA को ट्रस्ट करता है?
निष्कर्ष
इस गाइड के स्टेप्स फॉलो करके, आप ServBay लोकल डेवेलपमेंट एनवायरनमेंट में थर्ड पार्टी संस्था से जारी SSL सर्टिफिकेट को सफलतापूर्वक इम्पोर्ट और कॉन्फ़िगर कर सकते हैं। इससे आप प्रोडक्शन जैसी HTTPS सेटिंग का ऑथेंटिक टेस्ट लोकली कर सकते हैं। हालांकि ServBay में कई बेहतर और आसान विकल्प (जैसे ACME, ServBay CA) हैं, फिर भी कस्टम थर्ड पार्टी सर्टिफिकेट इम्पोर्ट करने का ज्ञान, स्पेशल केस या मूविंग प्रोजेक्ट्स के लिए बहुत उपयोगी है।