इथे सर्वात जास्त नुकसान दोन समजुती करतात: स्व-स्वाक्षरीत VPN प्रमाणपत्र म्हणजे बोगदा एन्क्रिप्ट केलेला नाही, आणि VPN क्लायंटने जे मागितले ते इन्स्टॉल केल्याने फक्त VPN वर परिणाम होतो। दोन्हीपैकी कोणतीही प्रत्यक्ष अंमलबजावणीशी संपर्कात टिकत नाही। स्व-स्वाक्षरीत प्रमाणपत्र स्वाक्षरीचा संबंध वर्णन करते, सुरक्षेचा निर्णय नाही, आणि तुम्ही जोडलेल्या विश्वासाची व्याप्ती ते कोणत्या साठवणीत पडते यावर अवलंबून असते। हेल्पडेस्कने एक इशारा शांत करण्यासाठी Windows मशीनमध्ये प्रदात्याचे मूळ आयात केले, आणि नंतर ब्राउझरने असंबंधित पोर्टलबद्दल तक्रार करणे का थांबवले याचे स्पष्टीकरण देत दुपारभर घालवले, असे मी पाहिले आहे। या प्रश्नाचे दोन्ही अर्धे एकत्र आहेत, म्हणून त्यांना एक म्हणून घ्या।

प्रमाणपत्र हे विश्वासाचे साठवण नाही

सर्व्हर सादर करत असलेल्या फाइलमध्ये सार्वजनिक की, विषयाचे नाव, जारीकर्त्याचे नाव, वैधता तारखा आणि विस्तार असतात। स्व-स्वाक्षरीत म्हणजे विषय आणि जारीकर्ता एकच घटक आहेत आणि स्वाक्षरी प्रमाणपत्राच्या स्वतःच्या की ने सत्यापित होते। त्या व्याख्येत काहीही कनेक्शन कमकुवत आहे असे म्हणत नाही, आणि काहीही क्लायंट ते स्वीकारेल असे म्हणत नाही।

स्वीकारार्हता इतरत्रून येते: तुम्ही क्लायंटला ज्या CA फाइलकडे निर्देश करता, हाताने तुलना करता ते फिंगरप्रिंट, किंवा क्लायंट वाचत असलेल्या साठवणीत आधीच बसलेले मूळ। अंमलबजावणी पूर्णपणे निरोगी असू शकते, पण तिचे प्रमाणपत्र प्रत्येक सार्वजनिक चाचणीत नापास होईल। openssl verify सिस्टम बंडलविरुद्ध अज्ञात जारीकर्त्याची नोंद करेल, आणि ती नोंद दोष नाही, बरोबर आहे।

OpenVPN चा ca पर्याय हा ॲप-मर्यादित विश्वासाचा सर्वात स्पष्ट उदाहरण आहे। ती फाइल क्लायंट स्वीकारणारे ॲंकर नाव देते, आणि त्यात एक खाजगी CA किंवा लहान अंमलबजावणीत सर्व्हरचे स्वतःचे स्व-स्वाक्षरीत प्रमाणपत्र असू शकते। आवृत्ती 2.6 CA फाइल वितरित करण्याऐवजी SHA-256 फिंगरप्रिंट पिन करण्यासाठी --peer-fingerprint सुद्धा स्वीकारते। WireGuard अजून दूर आहे: त्यात प्रमाणपत्रे अजिबात नाहीत, फक्त प्रत्येक सहकाऱ्यासाठी स्थिर सार्वजनिक की, म्हणून स्व-स्वाक्षरीचा प्रश्न त्याला लागू होत नाही।

तुम्ही विश्वास कुठे इन्स्टॉल करता हे ठरवते की तो कोणाला वारसा मिळेल

तेच प्रमाणपत्र तीन ठिकाणी ठेवा आणि तुम्हाला तीन वेगवेगळ्या स्फोट त्रिज्या मिळतील। फक्त VPN क्लायंट वाचत असलेले बंडल त्या क्लायंटवर परिणाम करते। ऑपरेटिंग सिस्टमच्या साठवणीतले मूळ त्या साठवणीशी सल्लामसलत करणाऱ्या प्रत्येक प्रोग्रामवर परिणाम करते। स्वतःचे विश्वास डेटाबेस असलेला ब्राउझर दोन्हीकडे दुर्लक्ष करू शकतो, म्हणूनच काम करत असल्यासारखे वाटलेल्या आयातीनंतरही इशारा टिकू शकतो।

Debian किंवा Ubuntu वर, /usr/local/share/ca-certificates/ मध्ये फाइल टाकणे आणि update-ca-certificates चालवणे सिस्टम-व्यापी बंडल बदलते। Windows वर, certutil -addstore -f Root मशीन साठवणीत लिहिते आणि उन्नत प्रॉम्प्टची गरज असते, तर -user जोडणे त्याऐवजी सध्याच्या वापरकर्त्याच्या साठवणीला लक्ष्य करते; दोन्ही अदलाबदल करण्यायोग्य नाहीत। Firefox स्वतःचा NSS डेटाबेस ठेवतो, म्हणून OS-स्तरावरील आयात तिथे कधीच दिसणार नाही।

व्याप्ती महत्त्वाची आहे कारण एक प्राधिकरण काय करू शकते यावर। जारीकर्ता CA अशा नावांसाठी स्वाक्षरी करू शकते ज्यांच्याशी त्याचा काही संबंध नाही, म्हणून त्या साठवणीवर विश्वास ठेवणारे काहीही त्या स्वाक्षऱ्या स्वीकारेल। एकच पिन केलेले पान ते करू शकत नाही; ते नेमके एका सहकाऱ्याची ओळख प्रमाणित करते। जर उद्देश एक VPN जोडणे असेल, तर ॲप-मर्यादित CA किंवा पिन केलेले पान तिथे पोहोचते, तर मशीन-व्यापी मूळ लक्षणाच्या गरजेपेक्षा खूप मोठी सवलत आहे।

तुम्ही अजूनही सार्वजनिक CA शिवाय एन्क्रिप्ट करत आहात

TLS हातमिळवणी सत्र की तयार करते, सहकाऱ्याचे प्रमाणपत्र तुम्ही आधीच विश्वास ठेवता त्याच्याशी साखळीने जोडले जाते किंवा नाही याची पर्वा न करता। स्व-स्वाक्षरीत म्हणजे साधा मजकूर नाही, आणि रहदारी उड्डाणात वाचनीय आहे असेही नाही। याचा अर्थ क्लायंटकडे की तो मागितलेल्या सर्व्हरची आहे यावर विश्वास ठेवण्याचे पूर्वसिद्ध कारण नाही।

त्या अंतरातच खऱ्या हल्ल्या राहतात। कोणतेही प्रमाणपत्र स्वीकारण्यासाठी संरचित केलेला क्लायंट, बंद केलेल्या पडताळणी सेटिंगद्वारे किंवा एकदा दाबून विसरलेल्या “तरीही विश्वास ठेवा” बटणाद्वारे, उत्तर देणाऱ्या कोणालाही आनंदाने एन्क्रिप्ट करेल। अडवणूक प्रमाणीकरणाच्या टप्प्यात, ॲप्लिकेशन डेटा हलण्यापूर्वी होते। ओळख तपासणीशिवाय एन्क्रिप्शन निष्क्रिय निरीक्षकाला बाहेर ठेवते आणि जास्त काही करत नाही।

जारीकर्त्यावर विश्वास ठेवल्याने नावाची तपासणी वगळली जात नाही

साखळी पडताळणी, नाव जुळणी आणि प्रमाणपत्राचा उद्देश वेगवेगळे निर्णय आहेत। साखळी वैध असताना नाव चुकीचे असू शकते, आणि नाव जुळत असताना प्रमाणपत्र वेगळ्या भूमिकेसाठी जारी केलेले असू शकते। RFC 5280 त्या मर्यादा वाहणारी क्षेत्रे परिभाषित करते, आणि क्लायंट त्या किती कडकपणे लागू करतो हा प्रत्येक ॲप्लिकेशनचा विषय आहे।

OpenVPN विभाजन दृश्यमान करते। verify-x509-name अपेक्षित विषय name, name-prefix किंवा subject जुळणीद्वारे पिन करते। remote-cert-tls server सहकाऱ्याचे प्रमाणपत्र सर्व्हर प्रमाणपत्र म्हणून वापरण्यायोग्य असणे आवश्यक करते, जे फक्त-क्लायंट प्रमाणपत्र नाकारते, जारीकर्त्यावर विश्वास असला तरीही। दोन्हीपैकी कोणतीही सेटिंग CA फाइल पाठवून बदलली जात नाही।

काहीही ठरवण्यापूर्वी प्रमाणपत्र तपासा:

  • openssl x509 -in server.crt -noout -subject -issuer -dates -ext subjectAltName ते कोणी, कोणत्या नावांसाठी आणि कधापर्यंत जारी केले हे दाखवते।
  • openssl verify -CAfile ca.crt server.crt पाठवायची असलेली साखळी पानाची खरोखर पडताळणी करते का ते तपासते।
  • openssl s_client -connect vpn.example.net:443 -servername vpn.example.net -CAfile ca.crt -verify_return_error वेब पोर्टलसारख्या TLS टोकांसाठी काम करते; 1194 वरील OpenVPN प्रोटोकॉल साधा TLS प्रवाह नाही, म्हणून ती चाचणी तिथे लागू होत नाही।

मुदत संपलेली तारीख, तुम्ही जोडता त्या नावासाठी subjectAltName नसणे, किंवा serverAuth वापर नसणे असलेले प्रमाणपत्र ॲंकर कितीही काळजीपूर्वक इन्स्टॉल केलेले असले तरी नापास होते।

एक स्वीकारण्यापूर्वी पाच तपासण्या

तुम्ही दुरुस्त करू पाहत असलेले कनेक्शन नसलेल्या चॅनेलवर फिंगरप्रिंटची तुलना करा: कन्सोल, तुमच्याकडे आधीच असलेला इन्स्टॉलर, स्वाक्षरी केलेली संरचना फाइल। सर्व्हरवरील openssl x509 -in server.crt -noout -fingerprint -sha256 आणि क्लायंट लॉगमधील तेच मूल्य एकच वस्तू पाहत आहात हे जाणण्यासाठी पुरतात।

पुढे तुम्ही काय इन्स्टॉल करत आहात ते ठरवा: एक पान, की अजून तयार करू शकणारे प्राधिकरण। मग ते कुठे जाते ते ठरवा, आणि ती साठवण वाचणाऱ्या ॲप्लिकेशनची नावे द्या। काढण्याचा मार्ग आठवत असतानाच लिहून ठेवा, कारण विश्वास-ठेवा-आणि-पुढे-जा अशाच प्रकारे तात्पुरती आयात कायमची होते।

शेवटी, बदलाची योजना करा। पिन केलेले प्रमाणपत्र किंवा फिंगरप्रिंट प्रमाणपत्र फिरताना त्याच विश्वासार्ह चॅनेलने अद्ययावत करावे लागते, आणि खाजगी CA चे स्वतःचे जारी आणि रद्द करण्याचे जीवनचक्र असते। खाजगी की गळती झाल्यास त्याच प्रमाणपत्राच्या प्रतीवर पुन्हा विश्वास ठेवल्याने काहीही दुरुस्त होत नाही; ओळख बदलावी लागते।

इशारा पाचही तपासण्यांमधून टिकला तर उपयुक्त प्रश्न हा नाही की कोणते बटण त्याला शांत करते, तर हा आहे की क्लायंट प्रत्यक्षात कोणते साठवण वाचतो आणि ते मूळ कुठून आले। त्याचे उत्तर द्या, आणि तुम्ही करणार असलेली आयात प्रतिक्रियेऐवजी निर्णय बनेल।

संबंधित लेख