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

मानलाई नाम दिनु अघि वस्तुलाई नाम दिनुहोस्

अपेक्षित मान सर्भरको पात प्रमाणपत्रको हो, त्यो जारी गर्ने CA को हो, वा पातभित्रको सार्वजनिक कुञ्जीको हो भनी निर्णय गर्नुहोस्। यी तीन फरक परीक्षण हुन् र ती फरक तरिकाले असफल हुन्छन्। मिल्ने CA फिंगरप्रिन्टले सर्भरलाई पिन गर्दैन, र सार्वजनिक कुञ्जीको ह्यास त्यही कुञ्जी राख्ने पुनःप्रकाशनबाट जानाजान बाँच्छ।

एल्गोरिदम पनि लेख्नुहोस्। SHA-256 आजको सामान्य अपेक्षा हो, तर पुराना उपकरणले अरू केही नमागेसम्म SHA-1 छाप्थे, र 40 अक्षरको हेक्स मान भनेको तपाईं दुई फरक कुराको तुलना गर्न लाग्नुभएको संकेत हो।

अपेक्षित मान दोस्रो च्यानलबाट ल्याउनुहोस्

दोस्रो च्यानल त्यस्तो हुनुपर्छ जहाँ तपाईं जसबाट बच्नुहुन्छ त्यो पक्ष लेख्न सक्दैन। तपाईंले पहिले नै प्रमाणीकरण गर्ने प्रोभिजनिङ प्रणाली, सिन्दुकमा राखिएको छापिएको अभिलेख, कन्फिगरेसन डेटाबेस, वा अर्को प्रक्रियाले पुर्‍याएको हस्ताक्षरित कागजात सबै उपयुक्त छन्। सहकर्मीको च्याट सन्देश, खोज नतिजाबाट पुगिएको सहयोग पृष्ठ, र तपाईं पहिले नै डिबग गरिरहनुभएको टर्मिनलमा टाँसिएको जुनसुकै कुरा उपयुक्त छैनन्।

पूरा मान र एल्गोरिदम माग्नुहोस्, कहिल्यै उपसर्ग होइन। कोलन र ठूला वा साना अक्षरले फरक पार्दैन, तर काटछाँटले 256-बिट परीक्षणलाई अनुमानको खेल बनाउँछ।

स्वतन्त्र स्रोतबाट कोहीले पनि अपेक्षित मान दिन सकेन भने, इमानदार नतिजा यही हो कि यो प्रमाणपत्र आज प्रमाणित गर्न सकिँदैन। यसो भन्नु क्लाइन्टले भर्खरै देखाएको कुरा पिन गर्नुभन्दा राम्रो हो, किनकि त्यसले चेतावनीलाई बानी बनाउँछ।

मान आफ्नोतर्फ निकाल्नुहोस्

प्रमाणपत्र फाइलका लागि आदेश openssl x509 -in server.crt -noout -fingerprint -sha256 हो। स्पष्ट डाइजेस्ट महत्त्वपूर्ण छ: त्यो बिना आउटपुट तपाईंको OpenSSL संस्करणमा निर्भर हुन्छ। नतिजा कोलनले छुट्याइएको हेक्स स्ट्रिङ हो, त्यसैले कोलन हटाएर तुलना गर्नु अघि दुवै पक्षलाई साना अक्षरमा ल्याउनुहोस्।

TLS सिधै बोल्ने इन्डपोइन्टका लागि, जोडिनुहोस् र प्रमाणपत्र पाइपबाट बाहिर निकाल्नुहोस्: openssl s_client -connect vpn.example.com:443 -servername vpn.example.com < /dev/null | openssl x509 -noout -fingerprint -sha256। यो वेब एडमिन प्यानल वा TLS श्रोताका लागि काम गर्छ, नियन्त्रण च्यानल सुरुङभित्र हुने OpenVPN का लागि होइन। OpenVPN का लागि, सकेटबाट समात्ने प्रयास गर्नुको सट्टा डिस्कमा रहेको प्रोफाइलबाट प्रमाणपत्र पढ्नुहोस्।

तुलना यान्त्रिक हुनुपर्छ। tr -d ':' र अक्षर एकरूपता प्रयोग गरी दुवै मान सामान्यीकरण गर्नुहोस्, त्यसपछि पूरै स्ट्रिङ तुलना गर्नुहोस्। आँखाले तुलना गर्नु भनेको मिल्ने उपसर्गले अन्तिम बाइटको भिन्नता लुकाउने तरिका हो। स्ट्रिङ फरक भए, व्याख्या खोज्नु अघि भिन्नतालाई वास्तविक मान्नुहोस्।

रोकिने सर्तहरू

वस्तु फरक भए रोकिनुहोस्, किनकि CA फिंगरप्रिन्टले पात प्रमाणपत्रलाई निर्दोष ठहराउन सक्दैन र पातले CA लाई सक्दैन। एल्गोरिदम फरक भए रोकिनुहोस्, किनकि SHA-1 मानको SHA-256 मानसँग तुलनाले तपाईंलाई केही भन्दैन। फिंगरप्रिन्ट मिले पनि प्रमाणपत्र म्याद सकिएको, रद्द भएको वा अर्को नामका लागि जारी भएको भए रोकिनुहोस्; मिल्ने ह्यास वैधताको परीक्षण होइन र टुटेको शृंखला सुधार्दैन। तपाईंले जाँच गर्ने अभिलेखको क्रम संख्यासँग क्रम संख्या नमिले पनि रोकिनुहोस्, किनकि बदलिएको प्रमाणपत्र पत्ता लगाउने सबैभन्दा सस्तो तरिका त्यही हो।

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

सुझाइएको सुधार होस्टनाम वा शृंखला प्रमाणीकरण बन्द गर्नु हो भने रोकिनुहोस्। फिंगरप्रिन्टले सामान्य परीक्षणहरूमा एउटा बन्देज थप्छ; तैनाथीले जानाजान मात्र-पिन मोडेल नरोजेसम्म त्यसले तिनलाई प्रतिस्थापन गर्दैन, र त्यो छनोटसँगै आफ्नै सञ्चालन लागत हुन्छ।

तुलना पछि

तपाईंले के तुलना गर्नुभयो, अपेक्षित मान कहाँबाट आयो र कहिले भन्ने अभिलेख राख्नुहोस्। प्रमाणपत्र पुनःप्रकाशित भएको भए, सुरक्षित अपेक्षा त्यही विश्वसनीय च्यानलबाट अद्यावधिक गर्नुहोस् र नयाँ क्रम संख्या टिप्नुहोस्, किनकि अर्को परिक्रमणलाई लेखापरीक्षणयोग्य बनाउने त्यही क्रम संख्या हो।

त्यसपछि सीमाहरूबारे स्पष्ट हुनुहोस्। फिंगरप्रिन्टले तपाईंसँग भएको प्रमाणपत्र त्यही हो जुन कसैले तपाईंलाई अपेक्षा गर्न भनेको थियो भनी पुष्टि गर्छ। होस्ट अक्षत छ कि छैन भन्नेबारे यसले केही भन्दैन, र यो प्रमाणपत्र कहाँसम्म पुग्न सक्छ भनी सेवाले अभिलेख राख्छ कि सीमित गर्छ भन्नेबारे पनि केही भन्दैन।

सम्बन्धित लेखहरू