एक ट्यूटोरियल आपसे Easy-RSA डायरेक्टरी में vars संपादित करने को कहता है, और आपकी मशीन की डायरेक्टरी में ऐसी कोई फ़ाइल नहीं है। आम तौर पर यह टूटा हुआ पैकेज नहीं, बल्कि जनरेशन का मेल न होना है। Easy-RSA 2 build-key जैसे शेल हेल्पर के साथ एक vars फ़ाइल रखता था; Easy-RSA 3 एक easyrsa कमांड देता है और टेम्पलेट तथा कमांड-लाइन विकल्पों से कॉन्फ़िगरेशन पढ़ता है। गाइड से कुछ भी कॉपी करने से पहले पता करें कि आपके पास कौन-सा है।

इन जाँचों को क्रम से चलाएँ, क्योंकि हर जाँच अगली को सीमित करती है।

1. सूची बनाएँ कि क्या इंस्टॉल है

Debian परिवार के सिस्टम पर पैकेज मैनेजर से पूछें कि उसने वास्तव में कौन-सी फ़ाइलें रजिस्टर कीं:

dpkg-query -L easy-rsa

मौजूदा Debian पैकेज की सूची में make-cadir, easyrsa प्रोग्राम, एक OpenSSL कॉन्फ़िगरेशन टेम्पलेट और vars.example शामिल हैं। यह बताता है कि इस डिस्ट्रीब्यूशन ने क्या भेजा। यह नहीं बताता कि किसी दूसरे डिस्ट्रीब्यूशन या अपस्ट्रीम tar आर्काइव ने वही जनरेशन कैसे व्यवस्थित किया, इसलिए रास्तों की व्याख्या करने से पहले संस्करण पढ़ें। अगर आउटपुट में make-cadir बिल्कुल नहीं दिखता, तो आप शायद टूटी इंस्टॉल नहीं, बल्कि कोई दूसरा पैकेजिंग जनरेशन देख रहे हैं।

easyrsa --version यह जानने का सबसे छोटा रास्ता है कि आप किस जनरेशन के बारे में पढ़ रहे हैं, और गाइड में किसी भी अन्य कमांड से पहले इसे चलाना उचित है।

2. जनरेशन 2 को जनरेशन 3 से अलग पहचानें

जनरेशन 2 शेल हेल्पर और एक vars फ़ाइल भेजता था जिसे आपको संपादित करना था। जनरेशन 3 सबकमांड के साथ एक easyrsa कमांड भेजता है, और यह टेम्पलेट तथा स्पष्ट विकल्पों से कॉन्फ़िगरेशन पढ़ता है।

यही अंतर इस विषय पर अधिकांश फ़ाइल-न-मिली रिपोर्टों की व्याख्या करता है। 2 के लिए लिखी गाइड आपसे source vars करने और build-key चलाने को कहती है, और 3 की इंस्टॉल में इनमें से कोई नहीं है। किसी दूसरी मशीन की कॉपी से गायब फ़ाइल का पीछा करना ही वह तरीका है जिससे लोग एक ही PKI डायरेक्टरी पर दो जनरेशन चलाने लगते हैं।

3. प्रोग्राम डायरेक्टरी को PKI वर्कस्पेस से अलग करें

इंस्टॉल की गई प्रोग्राम डायरेक्टरी डिज़ाइन से केवल पढ़ने योग्य है। आपका PKI एक अलग डायरेक्टरी है जिसमें CA, जारी किए गए प्रमाणपत्र और निजी कुंजियाँ हैं, और वही उन अनुमतियों को ले जाती है जिन्हें आपको ठीक से सेट करना है।

अगर पहले से कोई प्राधिकरण मौजूद है, उसका सार्वजनिक प्रमाणपत्र खोजें और उसकी स्थिति की पुष्टि करें कुछ भी छूने से पहले। किसी प्रतिस्थापन को आरंभ न करें, और इंडेक्स को फिर से न लिखें क्योंकि किसी ट्यूटोरियल ने दूसरा रास्ता इस्तेमाल किया था। सार्वजनिक टेम्पलेट कॉपी करना हानिरहित है, पर जारीकर्ता की निजी कुंजी कॉपी करना नहीं, और शेल में दोनों क्रियाएँ लगभग एक जैसी दिखती हैं।

4. रास्ते का पीछा करने से पहले कोटिंग जाँचें

फ़ॉर्मेट की गई पेज से कॉपी किया गया टेक्स्ट अक्सर टाइपोग्राफ़िक उद्धरण चिह्नों के साथ आता है। Bash केवल अपने प्रलेखित ASCII परिसीमकों को उद्धरण मानता है, इसलिए घुमावदार उद्धरणों में लिपटा रास्ता एक शाब्दिक फ़ाइलनाम बन जाता है जो मौजूद नहीं है।

printf '%s\n' "$EASY_RSA"

यह पूरे परिवेश के बजाय एक चर का मान छापता है, जो आप तब चाहते हैं जब सवाल यह हो कि मान में अनपेक्षित अक्षर या खाली स्थान हैं या नहीं। यह न मानें कि EASY_RSA जनरेशन 3 में अब भी कॉन्फ़िगरेशन चुनता है; इसके बजाय अपने संस्करण के लिए प्रलेखित PKI डायरेक्टरी विकल्प इस्तेमाल करें।

5. कुछ भी फिर से आरंभ करने से पहले रुकें

एक बार प्रोग्राम जनरेशन, इंस्टॉल किए गए रास्ते और वर्कस्पेस की भूमिका मेल खा जाएँ, तो बची हुई त्रुटि संभवतः अनुमति या गायब स्थिति की समस्या है, और वह किसी दूसरे वर्कअराउंड के बजाय अपने स्वयं के निदान की हक़दार है।

किसी दूसरे रिलीज़ से कैश किया गया पैकेज इंस्टॉल करना, डायरेक्टरियों को पुनरावर्ती रूप से कॉपी करना या खाली जारीकर्ता रिकॉर्ड बनाना मूल असंगति को छिपाता है और दूसरी जोड़ता है। कुछ भी बदलने से पहले संस्करण, रास्ता और सटीक त्रुटि लिख लें। यही तीन अगले कदम को दूसरे अनुमान के बजाय निर्णय में बदलते हैं, और अगले व्यक्ति को वही खोज दोहराने से रोकते हैं।

संबंधित लेख