मैं अपना खुद का OCSP रिस्पॉन्डर सेटअप करना चाहता हूं (सिर्फ परीक्षण उद्देश्यों के लिए)। इसके लिए मुझे रूट प्रमाणपत्र और उससे उत्पन्न कुछ प्रमाणपत्रों की आवश्यकता होती है।
मैंने ओपनस् एल का उपयोग करके एक स्व-हस्ताक्षरित प्रमाणपत्र बनाने में कामयाबी हासिल की है। मैं इसे रूट प्रमाण पत्र के रूप में उपयोग करना चाहता हूं। अगला कदम व्युत्पन्न प्रमाण पत्र बनाने के लिए होगा। मैं यह कैसे करना है पर प्रलेखन खोजने के लिए प्रतीत नहीं कर सकते। क्या किसी को पता है कि मुझे यह जानकारी कहां मिल सकती है?
संपादित करें
पूर्वव्यापी में, मेरे प्रश्न का अभी तक पूरी तरह से उत्तर नहीं दिया गया है। इस समस्या को स्पष्ट करने के लिए मैं अपनी प्रमाण पत्र श्रृंखला का प्रतिनिधित्व करता हूँ:
जड़ -> ए -> बी -> सी -> ...
मैं वर्तमान में ROOT और A प्रमाणपत्र बनाने में सक्षम हूं, लेकिन मुझे यह पता नहीं चला है कि लंबी श्रृंखला कैसे बनाई जाए।
रूट प्रमाणपत्र बनाने की मेरी आज्ञा है:
openssl req -new -newkey rsa:1024 -nodes -out ca.csr -keyout ca.key
openssl x509 -trustout -signkey ca.key -days 365 -req -in ca.csr -out ca.pem
प्रमाणपत्र ए इस तरह बनाया गया है:
openssl genrsa -out client.key 1024
openssl req -new -key client.key -out client.csr
openssl ca -in client.csr -out client.cer
यह कमांड मूल रूप से रूट सर्टिफिकेट पर निर्भर करता है, जिसके लिए वह ओपनस्क् कॉन्फ़िगरेशन फ़ाइल में आवश्यक जानकारी पाता है।
प्रमाणपत्र B को केवल A पर निर्भर होना चाहिए, जो कि कॉन्फ़िगर फ़ाइल में पंजीकृत नहीं है, इसलिए पिछली कमांड यहां काम नहीं करेगी।
B और उसके बाद प्रमाण पत्र बनाने के लिए मुझे किस कमांड लाइन का उपयोग करना चाहिए?
संपादित करें
मुझे इस लेख में उत्तर मिला । प्रमाणपत्र B (श्रृंखला A -> B) इन दो आदेशों के साथ बनाया जा सकता है:
# Create a certificate request
openssl req -new -keyout B.key -out B.request -days 365
# Create and sign the certificate
openssl ca -policy policy_anything -keyfile A.key -cert A.pem -out B.pem -infiles B.request
मैंने भी Opensl.cnf फाइल बदली:
[ usr_cert ]
basicConstraints=CA:TRUE # prev value was FALSE
यह दृष्टिकोण अच्छी तरह से काम कर रहा है।