remote-cert-tls server: OpenVPN प्रोफाइलमा यसले के जाँच्छ
यो निर्देशनले साथीको प्रमाणपत्रमा इन्कोड गरिएको भूमिका जाँच्छ, त्यसको नाम होइन। केही पनि निष्क्रिय गर्नु अघि भूमिका, विश्वास एङ्कर र होस्टनाम जाँचको तुलना गर्नुहोस्।
OpenVPN प्रोफाइलका तीन फरक भागले तीन फरक प्रश्नको जवाफ दिन्छन्, र तिनीहरूलाई मिसाउनु नै मानिसहरूले काम गरिरहेको जाँच बन्द गर्ने कारण हो। साथीको प्रमाणपत्र मैले विश्वास गर्ने अधिकारीले हस्ताक्षर गरेको हो? त्यो प्रमाणपत्रले TLS सर्भर भूमिका घोषणा गर्छ? मैले पुग्न खोजेको त्यही विशेष सर्भर हो? remote-cert-tls server केवल बीचको प्रश्नको जवाफ दिन्छ, र त्यो प्रमाणपत्रभित्रका विस्तारहरू पढेर गर्छ।
दिमागमा मिसाउन सजिलो तीन जाँच
विश्वास एङ्कर ca निर्देशनमा बस्छ। भूमिका जाँच remote-cert-tls निर्देशनको हो। पहिचान जाँच verify-x509-name निर्देशनको हो, जब प्रोफाइलले यसलाई प्रयोग गर्छ, वा डिप्लोयमेन्टले थप्ने कुनै पनि नाम जाँचको।
तिनीहरूले फरक विफलताहरू समेट्छन्:
| Question | Directive | Failure it catches |
|---|---|---|
| Who signed this? | ca | Certificate from an unrelated authority |
| Is this a server? | remote-cert-tls | Client certificate presented by a peer |
| Is this my server? | verify-x509-name | Another valid server from the same CA |
प्रोफाइलमा तीनवटै हुन सक्छन् र CA धेरै व्यापक रूपमा साझा गरिएको भए पनि कमजोर रहन सक्छ, यो निर्देशनको होइन, कुञ्जी व्यवस्थापनको प्रश्न हो।
भूमिका जाँचले के पढ्छ
यो निर्देशन म्याक्रो हो। यो कुञ्जी-प्रयोग आवश्यकता र TLS वेब सर्भर भूमिकाको नाम लिने विस्तारित-कुञ्जी-प्रयोग आवश्यकतामा विस्तार हुन्छ, त्यसैले साथीको प्रमाणपत्रले त्यो उद्देश्य वास्तवमै घोषणा गर्नुपर्छ। ग्राहक प्रमाणीकरणका लागि जारी गरिएको प्रमाणपत्रले त्यो पूरा गर्दैन, त्यही अधिकारीले दुवैमा हस्ताक्षर गरे पनि।
यो महत्त्वपूर्ण छ किनभने साना डिप्लोयमेन्टमा साझा CA सामान्य छ। एउटा अधिकारीले हरेक ग्राहक र सर्भरमा हस्ताक्षर गर्छ, र भूमिका जाँच बिना ती प्रमाणपत्रहरूमध्ये कुनैले पनि ह्यान्डशेकको सर्भर पक्ष पूरा गर्न सक्थ्यो। जाँचले त्यो परिदृश्य असम्भव बनाउँदैन, तर त्यसको तुच्छ संस्करण हटाउँछ।
यो निर्देशन डिजाइनले असममित छ: ग्राहकहरू remote-cert-tls server बोक्छन्, र सर्भरहरू remote-cert-tls client बोक्छन्। तिनीहरूलाई साट्नुहोस् र हरेक जडान भूमिका त्रुटिले असफल हुन्छ जो टुटेको प्रमाणपत्रजस्तो देखिन्छ।
पुराना प्रोफाइलहरू कहिलेकाहीँ त्यही उद्देश्यका लागि ns-cert-type प्रयोग गर्छन्। हालका म्यानुअल पृष्ठहरूले त्यो विकल्पलाई प्रतिस्थापित मान्छन्, त्यसैले अझै त्यसमा भर पर्ने प्रोफाइल डिबग गर्नुभन्दा माइग्रेट गर्न लायक छ।
यसलाई निष्क्रिय गर्नु समाधान किन लाग्छ
जब भूमिका जाँच असफल हुन्छ, जडान प्रमाणीकरण त्रुटिले रोकिन्छ र स्पष्ट कदम त्यो लाइन मेटाउनु हो। त्यसपछि जडान माथि आउँछ, जो प्रगतिजस्तो लाग्छ र वास्तवमा यो निर्देशनले रोक्नका लागि रहेको विफलता मोड हो। अब तपाईं त्यस्तो साथी स्वीकार गर्नुहुन्छ जसको प्रमाणपत्र कहिल्यै त्यो भूमिकाका लागि उद्देश्य थिएन।
यसको सट्टा त्रुटि पढ्नुहोस्। यसले असफल भएको जाँचको नाम दिन्छ, र अर्को पट्टिको प्रमाणपत्र जाँचेर यसले वास्तवमा कुन विस्तार बोक्छ देख्न सकिन्छ। दुई मिनेट पढाइले दोष जारी गर्नेमा छ कि कन्फिगरेसनमा भन्ने निर्णय गर्छ। अनुमान गर्दा दिउँसो बित्छ र सामान्यतया कमजोर प्रोफाइलमा अन्त्य हुन्छ। विस्तारित कुञ्जी-प्रयोग गुमाएको नवीकृत सर्भर प्रमाणपत्र नवीकरणमा साँचो दोष हो, ग्राहकलाई ढिलो गर्ने कारण होइन।
नाम जाँच अलग निर्देशन हो
भूमिका जाँच पूरा गर्नुको अर्थ साथी तपाईंको अधिकारीले हस्ताक्षर गरेको कुनै सर्भर हो। यसले कुन भन्ने केही बताउँदैन, जो त्यतिबेला महत्त्वपूर्ण हुन्छ जब त्यही CA ले धेरै गेटवेका लागि प्रमाणपत्र जारी गर्छ र तीमध्ये एउटा सम्झौता गरिएको वा पुनःप्रयोग गरिएको हुन्छ।
verify-x509-name प्रमाणपत्रको विषयलाई तपाईंले कन्फिगर गरेको मानसँग तुलना गर्छ, ठ्याक्कै विषय, उपसर्ग वा एकल फिल्डका लागि मिलान मोडसहित। वास्तवमै गेटवे पहिचान गर्ने फिल्ड प्रयोग गर्नुहोस्, र नाम बदलिँदा यसलाई जानाजानी अद्यावधिक गर्ने अपेक्षा राख्नुहोस्।
दुवैमध्ये कुनै पनि निर्देशनले राम्रो कुञ्जी-सम्हाल्ने कामको ठाउँ लिँदैन। यदि ग्राहक कुञ्जी फाइल प्रोफाइलसँगै यताउता प्रतिलिपि गरिन्छ भने, साथीको पहिचान वितरण सूचीजत्तिकै बलियो हुन्छ।
प्रोफाइल सम्पादन गर्नु अघि प्रमाणपत्र जाँच्नुहोस्
साथीको प्रमाणपत्र र ग्राहक लग त्यही क्रममा पढ्नुहोस्। प्रमाणपत्रले कुन भूमिका घोषणा गर्छ भन्छ; लगले कुन जाँचले यसलाई अस्वीकार गर्यो भन्छ।
यी आदेशहरूले विस्तृत जडानबाट प्रयोग-विस्तार र प्रमाणीकरण लाइनहरू छाप्छन्:
openssl x509 -in server.crt -noout -text | grep -A1 -E "Key Usage|Extended Key Usage"
sudo openvpn --config client.ovpn --verb 4 2>&1 | grep -i verifyयदि विस्तारहरूले सर्भर भूमिका देखाउँछन् र लगले अझै भूमिका विफलता रिपोर्ट गर्छ भने, प्रोफाइल खराब प्रमाणपत्रको सट्टा गलत प्रमाणपत्र फाइलतर्फ सङ्केत गरिरहेको हुन्छ। यदि विस्तारहरूले ग्राहक प्रमाणीकरण मात्र देखाउँछन् भने, ग्राहकलाई हेर्न छोड्नुहोस् र जारी गर्ने प्रक्रिया सुधार्नुहोस्। जुनसुकै हालतमा, जडानलाई स्वस्थ भन्नु अघि जाँच पुनःस्थापित गर्नुहोस्, किनभने प्रमाणीकरण हटाएपछिको सफल ह्यान्डशेकले त्यसले प्रतिस्थापित गरेको त्रुटिभन्दा कम प्रमाणित गर्छ।