अद्यतन:
बिलाव में क्लाइंट प्रमाणीकरण सक्षम करने के लिए जिस तरह से पालन करें।
क्लाइंट प्रमाणीकरण के फायदे लेने के लिए, हमें तीन प्रमाणपत्रों की आवश्यकता होती है। i.e टॉमकैट के लिए एक सर्वर सर्टिफिकेट, ब्राउज़र के लिए क्लाइंट सर्टिफिकेट और सीए का प्रमाणपत्र जो उपरोक्त उल्लिखित प्रमाणपत्रों पर हस्ताक्षर करेगा। यहां, मैं दिखाऊंगा कि विंडोज़ में इसे कैसे किया जाए।
दो तरीके हैं।
1) आपके पास एक सीएसआर फ़ाइल यानी एक प्रमाणपत्र हस्ताक्षर अनुरोध होना चाहिए।आप इसे प्रमाणपत्र प्राधिकरण में Verisign या Comodo या उनके जैसे कई अन्य सबमिट कर सकते हैं। वे आपको प्रमाणपत्र प्रदान करेंगे। या
2) आप अपनी खुद की प्रमाणपत्र प्राधिकरण बना सकते हैं और प्रमाणपत्रों पर हस्ताक्षर कर सकते हैं। लेकिन यह केवल व्यक्तिगत उपयोग के लिए ऐसा करने की सिफारिश की जाती है।
आपके पास निम्न चरणों को करने के लिए जावा और ओपनएसएसएल स्थापित होना चाहिए।
प्रमाणपत्र हस्ताक्षर अनुरोध उत्पन्न करने के लिए, आपके पास कुंजी होना चाहिए। मुख्य प्रकार उत्पन्न करने के लिए सीएमडी में निम्न आदेश टाइप करें।
openssl genrsa आउट Serverkey.key 1024
यह एक फ़ाइल "Serverkey.key" उत्पन्न होगा। मुख्य आकार 1024 है। आप इसे अपनी आवश्यकता के अनुसार दे सकते हैं।
अब निम्न आदेश की सहायता से सीएसआर फ़ाइल जेनरेट करें।
openssl अनुरोध -नया -कुंजी Serverkey.key आउट ServerReq.csr -config /path/to/openssl.cnf
एक बार जब आप इस आदेश पर अमल, आप कुछ देने के लिए कहा जाएगा जानकारी। उसके बाद, आपको अपनी निर्देशिका में सीएसआर फ़ाइल मिल जाएगी। आप इस फाइल को सीए में जमा कर सकते हैं। यदि आप इसे अपने व्यक्तिगत उपयोग के लिए कर रहे हैं, और आप अपने स्वयं के सीए रखना चाहते हैं, तो ऊपर दिए गए दो आदेशों की सहायता से अपने सीए के लिए एक कुंजी और सीएसआर बनाएं। सीए के लिए आपका सीएसआर होने के बाद, आप निम्न आदेश की सहायता से सीए की कुंजी से साइन इन कर सकते हैं।
openssl X509 -req -days 365 -इन CAReq.csr -signkey CAKey.key आउट CA.crt
एक बार जब आप CA प्रमाणपत्र है, तो आप अन्य प्रमाणपत्र पर हस्ताक्षर करने के लिए इसका इस्तेमाल कर सकते हैं।
openssl X509 -req -days 365 -CA CA.crt -CAkey CAKey.key -CAcreateserial -इन ServerReq.csr आउट server.crt
आप क्लाइंट प्रमाणपत्र के लिए एक ही आदेश का उपयोग कर सकते हैं भी।
हमारे क्लाइंट जो ब्राउज़र यहां है, वह पी 12 प्रारूप प्रमाण पत्र स्वीकार करेगा। पी 12 प्रारूप एक फ़ाइल है जिसमें आपका प्रमाण पत्र और कुंजी भी शामिल है।
सीआरटी को पी 12 में कनवर्ट करने के लिए निम्न आदेश का उपयोग करें।
openssl PKCS12 निर्यात -इन server.crt -inkey ServerKey.key -chain -CAfile CA.crt आउट ServerCert.p12
बिल्ला में, वहाँ एक truststore है जो होगा सीए के प्रमाणपत्र और दूसरा एक कीस्टोर है जिसमें सर्वर की कुंजी और प्रमाणपत्र (पी 12 फाइल) होगी।
ट्रस्टस्टोर में सीए के प्रमाण पत्र को आयात करने के लिए निम्न आदेश का उपयोग करें।
keytool -import -alias CertAuth -keystore caCerts।jks -file CA.crt
आप जो कुछ भी चाहते हैं उसे उपनाम दे सकते हैं। ऊपर दिए गए आदेश को निष्पादित करने के बाद पूछे जाने वाले पासवर्ड को नोट करें। हम server.xml फ़ाइल में उस पासवर्ड का उपयोग करेंगे। नीचे दिए गए आदेश के लिए भी लागू होता है।
कुंजीस्टोर में पी 12 प्रारूप प्रमाण पत्र आयात करने के लिए निम्न आदेश का उपयोग करें।
Keytool -importkeystore -destkeystore tomcat.keystore -srckeystore -ServerCert.p12 -srcstoretype PKCS12 -alias 1
अब, निम्नलिखित के रूप में बिल्ला के server.xml बदल जाते हैं।
<Connector port="8443"
protocol="org.apache.coyote.http11.Http11NioProtocol"
SSLEnabled="true" scheme="https" secure="true"
truststoreFile="path/to/truststorefile" truststorePass="password"
keystoreFile="path/to/keystorefile" keystorePass="password"
clientAuth="true" sslProtocol="TLS"
/>
अब, ब्राउज़र के क्लाइंट के पी 12 प्रारूप प्रमाण पत्र को आयात करें। फिर, टॉमकैट सर्वर शुरू करें और https://localhost:8443 तक पहुंचने का प्रयास करें। आप इस उत्तर के विस्तृत संस्करण के लिए blog पर जा सकते हैं। उम्मीद है की यह मदद करेगा।
मैं आपके द्वारा प्रदान की गई जानकारी के आधार पर वेब सेवा प्रदाता से सहमत हूं। उन्होंने एक मानक, व्यापक रूप से समर्थित प्रमाणीकरण तंत्र का उपयोग करना चुना है। उनके पास कोई व्यवसाय नहीं है (जब तक कि आप उन्हें परामर्श करने के लिए भुगतान नहीं कर रहे हों) आपको बताएंगे कि उनके द्वारा निर्दिष्ट इंटरफ़ेस को कैसे कार्यान्वित किया जाए। सौभाग्य से, चूंकि उन्होंने व्यापक रूप से उपयोग किए जाने वाले मानक का चयन किया है, इसलिए आपके पास कई संसाधन हैं जिनके लिए आप बदल सकते हैं (उनमें से कई जैसे स्टैक ओवरफ्लो-मुक्त हैं), और ऐसी तकनीक सीखें जो आपको अन्य संदर्भों में लाभ पहुंचा सकती है। – erickson
उनके साथ मेरी पकड़ सिर्फ एक ही समस्या से गहरी है। हम न केवल सेवा * तक पहुंच प्राप्त करते हैं, बल्कि हमें प्रति लेनदेन का भुगतान करना पड़ता है, इसलिए मुझे कम से कम थोड़ी मदद की उम्मीद है (कुछ अस्पष्ट पीडीएफ फाइलों के अलावा उनमें से लगभग कोई तकनीकी विवरण नहीं है) । मेरे सभी अन्य तृतीय पक्ष सेवा प्रदाता कम से कम मुझे कोड उदाहरण देते हैं या जब मेरे कोई प्रश्न हैं तो मुझे सही दिशा में इंगित कर सकते हैं। – dragonmantank