bg-tutorials

GlassFish पर SSL सर्टिफिकेट इंस्टॉल कैसे करें

इस ट्यूटोरियल में, आप सीखेंगे GlassFish (अब Eclipse GlassFish) पर SSL सर्टिफिकेट कैसे इंस्टॉल करें, Java keytool यूटिलिटी और asadmin कमांड लाइन का उपयोग करके।

GlassFish के लिए CSR कोड जनरेट करें

SSL सर्टिफिकेट ऑर्डर करते समय पहला चरण है CSR (Certificate Signing Request) बनाना और उसे अपनी Certificate Authority (आपके SSL प्रदाता) को भेजना। CSR एक टेक्स्ट ब्लॉक है जिसमें आपकी वेबसाइट और संगठन के बारे में विवरण होते हैं। CA इसका उपयोग आपकी पहचान सत्यापित करने के लिए करता है, इसलिए यदि CSR में गलत या पुरानी जानकारी है, तो CA आपके सर्टिफिकेट पर हस्ताक्षर नहीं करेगा।

GlassFish पर, CSR को Java keystore से keytool के साथ जनरेट किया जाता है, और वही keystore वह private key रखता है जिसे आप इंस्टॉलेशन के दौरान फिर से उपयोग करेंगे। आपके पास दो विकल्प हैं:

आप अपनी CSR फ़ाइल किसी भी टेक्स्ट एडिटर (उदाहरण के लिए, Notepad) से खोल सकते हैं। इसे अपने CA को भेजने से पहले, हम टाइपो या त्रुटियों के लिए अंतिम जाँच की सलाह देते हैं। इसका निरीक्षण करने के लिए हमारे CSR डिकोडर टूल का उपयोग करें।

आपके सर्टिफिकेट के वेलिडेशन प्रकार के आधार पर, जारी होने में कुछ मिनटों से लेकर कुछ बिजनेस दिनों तक का समय लग सकता है। एक बार जब SSL फ़ाइलें आपके इनबॉक्स में आ जाएँ, तो नीचे दिए गए इंस्टॉलेशन के साथ आगे बढ़ें।

GlassFish पर SSL सर्टिफिकेट इंस्टॉल करें

GlassFish इंस्टॉलेशन के पीछे मुख्य विचार यह है कि आपका signed सर्टिफिकेट आपके CSR के साथ बनाई गई private key से जुड़ा होना चाहिए। यह आप certificate chain और signed सर्टिफिकेट को उस keystore में इम्पोर्ट करके करते हैं जिसमें वह key पहले से मौजूद है, वही keystore जिसका उपयोग आपने CSR जनरेट करने के लिए किया था।

चरण 1: अपनी सर्टिफिकेट फ़ाइलें एक्सट्रैक्ट करें

आपका CA सर्टिफिकेट को आपके द्वारा दिए गए ईमेल पते पर भेजता है, आमतौर पर एक ZIP आर्काइव के रूप में। इसे एक्सट्रैक्ट करें। फ़ाइलें इन दो फॉर्मेट में से किसी एक में आती हैं:

  • PEM: अलग-अलग फ़ाइलें, आमतौर पर एक .crt (आपका सर्वर सर्टिफिकेट) और एक .ca-bundle (root और intermediate सर्टिफिकेट)।
  • PKCS#7: एक सिंगल .p7b (या .cer) फ़ाइल जिसमें आपका सर्टिफिकेट पूरी chain के साथ पहले से बंडल्ड होता है।

चरण 2: SSL फ़ाइलें अपने GlassFish सर्वर पर अपलोड करें

एक्सट्रैक्ट की गई फ़ाइलों को सर्वर पर, उस keystore की उसी डायरेक्टरी में अपलोड करें जिससे आपने अपना CSR जनरेट किया था (नीचे इसे mykeystore.jks कहा गया है)। PEM फॉर्मेट के लिए दो इम्पोर्ट कमांड की आवश्यकता होती है; PKCS#7 के लिए केवल एक की। अपनी फ़ाइलों से मेल खाने वाला फॉर्मेट चुनें।

PEM फॉर्मेट। CA बंडल को पहले इम्पोर्ट करें ताकि keytool एक पूर्ण trust chain बना सके, फिर अपना सर्वर सर्टिफिकेट इम्पोर्ट करें। CA बंडल इम्पोर्ट करें इसके साथ:

keytool -import -trustcacerts -alias ca -file file.ca-bundle -keystore mykeystore.jks

इस chain प्रवेश के alias के लिए आप किसी भी नाम का उपयोग कर सकते हैं (यहाँ, ca), जब तक कि यह आपके private-key alias से अलग हो। इसके बाद, अपना signed सर्वर सर्टिफिकेट मौजूदा private-key alias में इम्पोर्ट करें, वही alias जिसका उपयोग आपने CSR जनरेट करते समय किया था:

keytool -import -trustcacerts -alias myalias -file file.crt -keystore mykeystore.jks

यहाँ, myalias वही alias होना चाहिए जो पहले से आपकी private key रखता है। क्योंकि उस alias में एक key है, keytool इस इम्पोर्ट को एक certificate reply मानता है और signed सर्टिफिकेट को उस key से बांध देता है। यही वह चरण है जो HTTPS को काम करने योग्य बनाता है; नीचे दी गई चेतावनी देखें।

PKCS#7 फॉर्मेट। एक .p7b फ़ाइल में पहले से पूरी chain शामिल होती है, इसलिए एक ही कमांड सब कुछ एक साथ इम्पोर्ट कर देता है, फिर से private-key alias में:

keytool -import -trustcacerts -alias myalias -file file.p7b -keystore mykeystore.jks

keytool आपके keystore पासवर्ड के लिए प्रॉम्प्ट करता है। ऊपर की तरह, myalias आपके मौजूदा private-key alias से मेल खाना चाहिए। यदि आपको alias याद नहीं है, तो keystore की सामग्री को सूचीबद्ध करें:

keytool -list -v -keystore mykeystore.jks

उस प्रवेश को देखें जिसका प्रकार PrivateKeyEntry है; वही alias वह है जिसमें आपका signed सर्टिफिकेट इम्पोर्ट किया जाना चाहिए।

⚠️ महत्वपूर्ण गलती: signed सर्टिफिकेट को एक बिलकुल नए alias के अंदर इम्पोर्ट न करें। यदि alias में कोई मौजूदा private key नहीं है, तो keytool सर्टिफिकेट को बिना जुड़ी key के एक स्टैंडअलोन trusted प्रवेश के रूप में स्टोर कर देता है, और TLS विफल हो जाएगा। हमेशा reply को उस alias में इम्पोर्ट करें जिसमें पहले से key मौजूद है (डिफ़ॉल्ट GlassFish alias: s1as)।

चरण 3: डिफ़ॉल्ट GlassFish keystore में इम्पोर्ट करें

आपके सर्टिफिकेट के तैयार होने के बाद, अपने keystore को डिफ़ॉल्ट GlassFish keystore में इम्पोर्ट करें। डिफ़ॉल्ट इंस्टॉल पर यह domain के config डायरेक्टरी में होता है, उदाहरण के लिए glassfish/domains/domain1/config/keystore.jks (पुराने GlassFish 4 बिल्ड्स में यह एक glassfish4/ टॉप फोल्डर के अंदर नेस्टेड होता है)। इसका मैचिंग truststore उसी डायरेक्टरी में cacerts.jks है।

नोट: GlassFish डिफ़ॉल्ट रूप से domain1 बनाता है। यदि आपने अपना खुद का domain जोड़ा है, तो उसकी डायरेक्टरी का उपयोग करें।

अपने keystore को GlassFish keystore में इम्पोर्ट करें इसके साथ:

keytool -importkeystore -srckeystore mykeystore.jks -destkeystore keystore.jks

चरण 4: keystore पासवर्ड मेल कराएँ

GlassFish keystore के लिए पासवर्ड domain के GlassFish मास्टर पासवर्ड से मेल खाना चाहिए। यदि मास्टर पासवर्ड, keystore पासवर्ड, और private-key पासवर्ड सभी मेल नहीं खाते, तो GlassFish key को अनलॉक नहीं कर पाएगा और आपका SSL सर्टिफिकेट काम नहीं करेगा। (एक नए domain पर, डिफ़ॉल्ट keystore पासवर्ड changeit होता है।)

चरण 5: अपना GlassFish कॉन्फिगरेशन अपडेट करें

सफल इम्पोर्ट के बाद, GlassFish के HTTPS listener को अपने सर्टिफिकेट की ओर इंगित करें ताकि यह डिफ़ॉल्ट self-signed सर्टिफिकेट के बजाय नया सर्टिफिकेट सर्व करे। आप यह ब्राउज़र से GlassFish Administration Console के माध्यम से कर सकते हैं, या domain.xml को मैन्युअल रूप से संपादित करके।

विकल्प A: Administration Console। पहले, domain के लिए secure administration सक्षम करें:

asadmin enable-secure-admin

परिवर्तन प्रभावी होने के लिए GlassFish domain (डिफ़ॉल्ट है domain1) को पुनः प्रारंभ करें:

asadmin restart-domain domain1

अब कंसोल को https://yoursite.com:4848 पर खोलें। self-signed सर्टिफिकेट चेतावनी को नज़रअंदाज़ करें और आगे बढ़ें। Configurations > server-config > HTTP Service > HTTP Listeners > http-listener-2 पर नेविगेट करें।

SSL टैब खोलें और, Certificate Nickname फ़ील्ड में, अपना सर्टिफिकेट alias दर्ज करें (आपके keystore alias के समान)। फिर General टैब पर जाएँ और listener पोर्ट को 443 में बदलें। GlassFish डिफ़ॉल्ट रूप से HTTPS के लिए 8181 का उपयोग करता है। अपने परिवर्तन सेव करें।

कभी-कभी कंसोल में हर कॉन्फिगरेशन संदर्भ नए alias के साथ अपडेट नहीं होता। यदि ऐसा होता है, तो परिवर्तन को domain.xml (विकल्प B) में मैन्युअल रूप से पूरा करें।

विकल्प B: domain.xml संपादित करें। domain.xml फ़ाइल उसी config डायरेक्टरी में होती है, उदाहरण के लिए glassfish/domains/domain1/config/domain.xml। सुरक्षित संपादन के लिए, पहले domain को रोकें:

asadmin stop-domain domain1

domain.xml को एक टेक्स्ट एडिटर में खोलें और Find (Ctrl+F) का उपयोग करके s1as को खोजें, जो डिफ़ॉल्ट GlassFish सर्टिफिकेट alias है। s1as के हर उल्लेख को अपने सर्टिफिकेट alias से बदलें (इस गाइड में, myalias)। इन सभी को अपडेट करने से Administration Console भी आपके सर्टिफिकेट से सुरक्षित हो जाता है।

domain.xml सेव करें और domain को फिर से प्रारंभ करें:

asadmin start-domain domain1

बधाई हो, अब आपका SSL सर्टिफिकेट आपके GlassFish सर्वर पर इंस्टॉल हो गया है।

अपना SSL इंस्टॉलेशन टेस्ट करें

सर्टिफिकेट इंस्टॉल करने के बाद, अपने इंस्टॉलेशन की स्थिति टेस्ट करने के लिए हमारा SSL चेकर चलाएँ। इंस्टेंट स्कैन किसी भी त्रुटि या कमजोरी (जैसे कि गायब intermediate सर्टिफिकेट या untrusted chain) को उजागर करता है जो यह प्रभावित कर सकती है कि ब्राउज़र आपके सर्टिफिकेट के साथ कैसा व्यवहार करते हैं।

GlassFish के लिए SSL सर्टिफिकेट कहाँ खरीदें?

GlassFish के लिए SSL सर्टिफिकेट खरीदने की सबसे अच्छी जगह है SSL Dragon। हम बाज़ार में सबसे कम कीमतों में से कुछ प्रदान करते हैं और अपने सभी SSL उत्पादों में नियमित छूट देते हैं, और हमने मजबूत एन्क्रिप्शन और समर्पित सहायता के लिए इंडस्ट्री के सर्वश्रेष्ठ SSL ब्रांड्स के साथ साझेदारी की है। हमारे सभी SSL सर्टिफिकेट GlassFish के साथ संगत हैं।

आपकी पसंद में मदद करने के लिए, हमने दो मुफ्त टूल बनाए हैं। हमारे SSL विज़ार्ड को आपके प्रोजेक्ट और बजट के लिए सबसे अच्छा SSL डील खोजने में केवल कुछ सेकंड लगते हैं।

अक्सर पूछे जाने वाले प्रश्न

GlassFish पर डिफ़ॉल्ट keystore और alias क्या है?

एक GlassFish domain अपने config डायरेक्टरी में दो JKS फ़ाइलों के साथ आता है: keystore.jks, जो private keys रखता है, और cacerts.jks, trusted CA सर्टिफिकेट्स का truststore। दोनों डिफ़ॉल्ट रूप से domains/domain1/config/ में होते हैं। secure HTTP listener द्वारा उपयोग किया जाने वाला डिफ़ॉल्ट सर्टिफिकेट alias s1as है, और डिफ़ॉल्ट keystore पासवर्ड changeit है।

इम्पोर्ट करने के बाद मेरा GlassFish SSL सर्टिफिकेट काम क्यों नहीं करता?

सामान्य कारण यह है कि signed सर्टिफिकेट को उस alias के बजाय एक नए alias के अंदर इम्पोर्ट कर दिया जाता है जो पहले से आपकी private key रखता है। keytool फिर इसे बिना key के एक trusted सर्टिफिकेट प्रवेश के रूप में स्टोर करता है, इसलिए GlassFish TLS handshake पूरा नहीं कर पाता। signed reply को मौजूदा private-key alias (डिफ़ॉल्ट s1as) में फिर से इम्पोर्ट करें। दूसरा सबसे सामान्य कारण पासवर्ड का मेल न खाना है; keystore, key, और domain मास्टर पासवर्ड सभी समान होना चाहिए।

क्या मुझे CA बंडल या सर्टिफिकेट पहले इम्पोर्ट करना चाहिए?

CA बंडल (root और intermediate सर्टिफिकेट्स) को पहले, एक trusted प्रवेश के रूप में इम्पोर्ट करें। यह keytool को एक पूर्ण chain बनाने देता है जब आप बाद में अपना signed सर्वर सर्टिफिकेट private-key alias में इम्पोर्ट करते हैं। PKCS#7 (.p7b) फ़ाइल के साथ chain पहले से बंडल्ड होती है, इसलिए एक ही इम्पोर्ट सब कुछ संभाल लेता है।

SSL कॉन्फिगरेशन बदलने के बाद मैं GlassFish को कैसे पुनः प्रारंभ करूँ?

एक चरण में परिवर्तन लागू करने के लिए asadmin restart-domain domain1 चलाएँ, या domain को अलग-अलग रोकें और प्रारंभ करें asadmin stop-domain domain1 के बाद asadmin start-domain domain1 के साथ। secure admin सक्षम करने के बाद और domain.xml संपादित करने के बाद पुनः प्रारंभ करना आवश्यक होता है।

GlassFish HTTPS के लिए कौन सा पोर्ट उपयोग करता है?

डिफ़ॉल्ट रूप से, secure listener (http-listener-2) पोर्ट 8181 का उपयोग करता है, और Administration Console पोर्ट 4848 का उपयोग करता है। स्टैंडर्ड पोर्ट पर HTTPS सर्व करने के लिए, Admin Console में या domain.xml में listener पोर्ट को 443 में बदलें।

आज ऑर्डर करते समय एसएसएल प्रमाणपत्रों पर 10% की बचत करें!

तेजी से जारी करना, मजबूत एन्क्रिप्शन, 99.99% ब्राउज़र ट्रस्ट, समर्पित समर्थन और 25 दिन की मनी-बैक गारंटी। कूपन कोड: SAVE10

उड़ान में एक ड्रैगन की एक विस्तृत छवि
द्वारा लिखित

एसएसएल प्रमाणपत्रों में विशेषज्ञता वाला अनुभवी सामग्री लेखक। जटिल साइबर सुरक्षा विषयों को स्पष्ट, आकर्षक सामग्री में बदलना। प्रभावशाली आख्यानों के माध्यम से डिजिटल सुरक्षा को बेहतर बनाने में योगदान करें।