Apigee Edge दस्तावेज़ देखा जा रहा है.
Apigee X दस्तावेज़ पर जाएं. जानकारी
इस दस्तावेज़ में बताया गया है कि Apigee Edge में किसी कीस्टोर या ट्रस्टस्टोर में सर्टिफ़िकेट अपलोड करने से पहले, सर्टिफ़िकेट की चेन की पुष्टि कैसे की जाती है. इस प्रोसेस में, सर्टिफ़िकेट की चेन की पुष्टि करने के लिए OpenSSL टूलकिट का इस्तेमाल किया जाता है. साथ ही, यह ऐसे सभी प्लैटफ़ॉर्म पर लागू होती है जहां OpenSSL उपलब्ध है.
शुरू करने से पहले
इस दस्तावेज़ में दिए गए चरणों का इस्तेमाल करने से पहले, पक्का करें कि आप इन विषयों को समझ गए हों:
- अगर आपको सर्टिफ़िकेट की चेन के बारे में जानकारी नहीं है, तो चेन ऑफ़ ट्रस्ट पढ़ें.
- अगर आप OpenGL लाइब्रेरी के बारे में नहीं जानते हैं, तो OpenSSL पढ़ें.
- अगर आपको इस गाइड में कमांड लाइन के उदाहरणों का इस्तेमाल करना है, तो{9/} क्लाइंट के नए वर्शन को इंस्टॉल या अपडेट करें.
- पक्का करें कि सर्टिफ़िकेट, PEM फ़ॉर्मैट में हैं. अगर सर्टिफ़िकेट, PEM फ़ॉर्मैट में नहीं हैं, तो उन्हें PEM फ़ॉर्मैट में बदलने के लिए, सर्टिफ़िकेट को काम करने वाले फ़ॉर्मैट में बदलना में दिए गए निर्देशों का पालन करें.
पूरी चेन के लिए, सर्टिफ़िकेट के विषय और उसे जारी करने वाले की पुष्टि करना
OpenGL के निर्देशों का इस्तेमाल करके, सर्टिफ़िकेट की चेन की पुष्टि करने के लिए, इन सेक्शन में बताए गए चरणों को पूरा करें:
- सर्टिफ़िकेट की चेन को अलग-अलग करना
- सर्टिफ़िकेट के विषय और उसे जारी करने वाले की पुष्टि करना
- सर्टिफ़िकेट के विषय और जारी करने वाले के हैश की पुष्टि करना
- सर्टिफ़िकेट की समयसीमा खत्म होने की पुष्टि करना
सर्टिफ़िकेट की चेन को अलग-अलग किया जा रहा है
सर्टिफ़िकेट की पुष्टि करने से पहले, आपको यहां दिए गए तरीके का इस्तेमाल करके, सर्टिफ़िकेट की चेन को अलग-अलग सर्टिफ़िकेट में बांटना होगा:
- उस सर्वर में लॉगिन करें जहां Googlebot क्लाइंट मौजूद है.
- सर्टिफ़िकेट की चेन को इन सर्टिफ़िकेट में बांटें (अगर पहले से नहीं किया गया है):
-
इकाई का सर्टिफ़िकेट:
entity.pem
-
इंटरमीडिएट सर्टिफ़िकेट:
intermediate.pem
-
रूट सर्टिफ़िकेट:
root.pem
नीचे दिए गए डायग्राम में सर्टिफ़िकेट की चेन का एक उदाहरण दिखाया गया है:
सर्टिफ़िकेट के विषय और उसे जारी करने वाले की पुष्टि करना
इस सेक्शन में बताया गया है कि सर्टिफ़िकेट पाने के विषय और उसे जारी करने वाले की जानकारी कैसे पाएं. साथ ही, इस बात की पुष्टि करने का तरीका भी बताया गया है कि आपके पास सर्टिफ़िकेट की मान्य चेन है.
-
चेन में हर सर्टिफ़िकेट के लिए,
entity
सेroot
तकSubject
औरIssuer
पाने के लिए, नीचे दिए गए OpenSSL कमांड को चलाएं और पुष्टि करें कि वे एक सही सर्टिफ़िकेट चेन बनाते हैं:openssl x509 -text -in certificate | grep -E '(Subject|Issuer):'
जहां certificate, सर्टिफ़िकेट का नाम है.
-
पुष्टि करें कि चेन में मौजूद सर्टिफ़िकेट, इन दिशा-निर्देशों के मुताबिक हैं:
-
हर सर्टिफ़िकेट का
Subject
, चेन में मौजूद पिछले सर्टिफ़िकेट केIssuer
से मेल खाता है (Entity
सर्टिफ़िकेट को छोड़कर). -
रूट सर्टिफ़िकेट के लिए
Subject
औरIssuer
एक जैसे हैं.
अगर चेन में मौजूद सर्टिफ़िकेट इन दिशा-निर्देशों का पालन करते हैं, तो सर्टिफ़िकेट की चेन को पूरा और मान्य माना जाता है.
सर्टिफ़िकेट की चेन की पुष्टि का सैंपल
नीचे दिए गए उदाहरण में, तीन सर्टिफ़िकेट वाले सैंपल सर्टिफ़िकेट चेन के लिए,{9/} कमांड का आउटपुट दिया गया है:
इकाई का सर्टिफ़िकेट
openssl x509 -text -in entity.pem | grep -E '(Subject|Issuer):' Issuer: C = US, O = Google Trust Services, CN = GTS CA 1O1 Subject: C = US, ST = California, L = Mountain View, O = Google LLC, CN = *.enterprise.apigee.com
इंटरमीडिएट सर्टिफ़िकेट
openssl x509 -text -in intermediate.pem | grep -E '(Subject|Issuer):' Issuer: OU = GlobalSign Root CA - R2, O = GlobalSign, CN = GlobalSign Subject: C = US, O = Google Trust Services, CN = GTS CA 1O1
रूट सर्टिफ़िकेट
openssl x509 -text -in root.pem | grep -E '(Subject|Issuer):' Issuer: OU = GlobalSign Root CA - R2, O = GlobalSign, CN = GlobalSign Subject: OU = GlobalSign Root CA - R2, O = GlobalSign, CN = GlobalSign
ऊपर दिखाए गए उदाहरण में, यहां दी गई बातों पर ध्यान दें:
-
इंटरमीडिएट सर्टिफ़िकेट का
Subject
, इकाई सर्टिफ़िकेट केIssuer
से मेल खाता है. -
रूट सर्टिफ़िकेट का
Subject
, इंटरमीडिएट सर्टिफ़िकेट केIssuer
से मेल खाता है. -
रूट सर्टिफ़िकेट में
Subject
औरIssuer
एक जैसे होते हैं.
ऊपर दिए गए उदाहरण से, इस बात की पुष्टि की जा सकती है कि सैंपल सर्टिफ़िकेट की चेन मान्य है.
-
हर सर्टिफ़िकेट का
सर्टिफ़िकेट के विषय और जारी करने वाले के हैश की पुष्टि करना
इस सेक्शन में, सर्टिफ़िकेट के विषय और उसे जारी करने वाले के हैश को पाने का तरीका बताया गया है. साथ ही, इस बात की पुष्टि करने का तरीका भी बताया गया है कि आपके पास सर्टिफ़िकेट की मान्य चेन है.
सर्टिफ़िकेट के हैश क्रम की पुष्टि करना हमेशा अच्छा तरीका होता है, क्योंकि इससे सर्टिफ़िकेट के सामान्य नाम (सीएन) जैसी समस्याओं की पहचान करने में मदद मिल सकती है, जिनमें अनचाही स्पेस या विशेष वर्ण मौजूद हैं.
- चेन में हर सर्टिफ़िकेट का
hash
क्रमentity
सेroot
तक पाने के लिए, नीचे दिए गए OpenSSL कमांड को चलाएं और पुष्टि करें कि वे सर्टिफ़िकेट की एक सही चेन बनाते हैं. - पुष्टि करें कि चेन में मौजूद सर्टिफ़िकेट, इन दिशा-निर्देशों के मुताबिक हैं:
-
हर सर्टिफ़िकेट का
Subject
, चेन में पिछले सर्टिफ़िकेट केIssuer
से मेल खाता है (Entity
सर्टिफ़िकेट को छोड़कर). -
रूट सर्टिफ़िकेट के लिए
Subject
औरIssuer
एक जैसे हैं. -
इंटरमीडिएट सर्टिफ़िकेट का
subject hash
, इकाई सर्टिफ़िकेट केissuer hash
से मेल खाता है. -
रूट सर्टिफ़िकेट का
subject hash
, जारी करने वाले सर्टिफ़िकेट केissuer hash
से मेल खाता है. -
रूट सर्टिफ़िकेट में
subject
औरissuer hash
एक जैसे होते हैं.
openssl x509 -hash -issuer_hash -noout -in certificate
जहां certificate, सर्टिफ़िकेट का नाम है.
अगर चेन में मौजूद सर्टिफ़िकेट इन दिशा-निर्देशों का पालन करते हैं, तो सर्टिफ़िकेट की चेन को पूरा और मान्य माना जाता है.
हैश सीक्वेंस के ज़रिए सर्टिफ़िकेट की चेन की पुष्टि का सैंपल
नीचे दिए गए उदाहरण में, तीन सर्टिफ़िकेट वाले सैंपल सर्टिफ़िकेट चेन के लिए, ओपनर को दिए गए निर्देशों का आउटपुट दिया गया है:
openssl x509 -in entity.pem -hash -issuer_hash -noout c54c66ba #this is subject hash 99bdd351 #this is issuer hash
openssl x509 -in intermediate.pem -hash -issuer_hash -noout 99bdd351 4a6481c9
openssl x509 -in root.pem -hash -issuer_hash -noout 4a6481c9 4a6481c9
ऊपर दिखाए गए उदाहरण में, यहां दी गई बातों पर ध्यान दें:
ऊपर दिए गए उदाहरण से, इस बात की पुष्टि की जा सकती है कि सैंपल सर्टिफ़िकेट की चेन मान्य है.
सर्टिफ़िकेट की समयसीमा खत्म होने की पुष्टि की जा रही है
इस सेक्शन में, नीचे दिए गए तरीकों का इस्तेमाल करके यह पुष्टि करने का तरीका बताया गया है कि चेन के सभी सर्टिफ़िकेट की समयसीमा खत्म हो गई है या नहीं:
- सर्टिफ़िकेट के शुरू और खत्म होने की तारीख पाएं.
- ऐक्सेस खत्म होने की स्थिति का पता लगाएं.
शुरू और खत्म होने की तारीख
entity
से root
तक की चेन में हर सर्टिफ़िकेट की शुरू और खत्म होने की तारीख पाने के लिए,
नीचे दिए गए OpenSSL कमांड को चलाएं और पुष्टि करें कि चेन के सभी सर्टिफ़िकेट लागू हैं (शुरू होने की तारीख आज से पहले की है) और उनकी समयसीमा खत्म नहीं हुई है.
सर्टिफ़िकेट के खत्म होने की पुष्टि का सैंपल, शुरू और खत्म होने की तारीखों के हिसाब से
openssl x509 -startdate -enddate -noout -in entity.pem notBefore=Feb 6 21:57:21 2020 GMT notAfter=Feb 4 21:57:21 2021 GMT
openssl x509 -startdate -enddate -noout -in intermediate.pem notBefore=Jun 15 00:00:42 2017 GMT notAfter=Dec 15 00:00:42 2021 GMT
openssl x509 -startdate -enddate -noout -in root.pem notBefore=Apr 13 10:00:00 2011 GMT notAfter=Apr 13 10:00:00 2022 GMT
समयसीमा खत्म होने की स्थिति
सर्टिफ़िकेट की समयसीमा पहले ही खत्म हो चुकी है या
अगले N seconds
में खत्म होने वाली है, यह देखने के लिए नीचे दिए गए OpenSSL कमांड को चलाएं. इससे सिस्टम की मौजूदा तारीख के हिसाब से सर्टिफ़िकेट के खत्म होने की स्थिति की जानकारी मिलती है.
openssl x509 -checkend <N Seconds> -noout -in certificate
जहां certificate, सर्टिफ़िकेट का नाम है.
चेकएंड विकल्प की मदद से सर्टिफ़िकेट की समयसीमा खत्म होने की पुष्टि का सैंपल
इस निर्देश में 0 seconds
का इस्तेमाल किया जाता है, ताकि यह पता लगाया जा सके कि सर्टिफ़िकेट की समयसीमा पहले ही खत्म हो चुकी है या नहीं:
openssl x509 -checkend 0 -noout -in entity.pem Certificate will not expire
openssl x509 -checkend 0 -noout -in intermediate.pem Certificate will not expire
openssl x509 -checkend 0 -noout -in root.pem Certificate will not expire
इस उदाहरण में, Certificate will not expire
मैसेज से पता चलता है कि सर्टिफ़िकेट की समयसीमा खत्म नहीं हुई है.