VPN सर्वर को बिना पीछे एक्सेस छोड़े सेवानिवृत्त कैसे करें
क्लाइंट ऐप से बाहर की ओर चलें: कुंजियाँ और खाते रद्द करें, लिसनर बंद करें, फिर साबित करें कि कोई प्रोफ़ाइल, DNS रिकॉर्ड या बैकअप अब भी उस तक नहीं पहुँच सकता।
जिस दिन सेवानिवृत्ति टिकट खुलता है, उस दिन भी आपका क्लाइंट कनेक्ट होता है। ऐप में एक प्रोफ़ाइल बैठी है, वह बातचीत करती है, और टनल ऐसे उठती है जैसे कुछ बदला ही न हो। यही वह क्षण है जब आपको उस दिशा के उलट काम करना है जिसमें आपने सेवा बनाई थी: क्लाइंट सूची से शुरू करें, बाहर की ओर लिसनर तक जाएँ, फिर फ़ायरवॉल तक, और अंत में उन क्रेडेंशियलों पर समाप्त करें जो उन सबसे अधिक जीते हैं। VM बंद करना आख़िरी कदम है, पहला नहीं। यह मार्गदर्शिका मानती है कि आपके पास होस्ट तक कंसोल पहुँच है और क्लाइंट रिकॉर्ड तथा DNS संपादित करने का अधिकार है।
पहले क्लाइंट सूची से गुज़रें
जो भी आपकी प्रोफ़ाइलें वितरित करता है उसे खोलें और सर्वर को छूने से पहले सूची पढ़ें। हर प्रविष्टि एक ऐसा उपकरण है जो मानता है कि उसके पास पहुँच है: फ़ोन, लैपटॉप, एक शाखा राउटर, एक कंटेनर जो हर रात सिंक होता है। उस सूची को टिकट में निर्यात करें, क्योंकि होस्ट जाने के बाद कोई wg show नहीं होगा जो बताए कि कौन जुड़ा था।
हर उपकरण को प्रतिस्थापन एंडपॉइंट, अब आवश्यक नहीं, या अज्ञात में वर्गीकृत करें। अज्ञात की टोकरी ही मायने रखती है, क्योंकि वही प्रोफ़ाइलें हैं जिन्हें कोई महीनों बाद दराज़ में पाकर आज़माएगा। सूचना उसी चैनल पर भेजें जिसका उपयोग आप एक्सेस अनुरोधों के लिए करते हैं, और उसमें तारीख डालें कि पुराना एंडपॉइंट कब जवाब देना बंद करेगा।
पहचान रद्द करें, सिर्फ़ फ़ाइल नहीं
दो अलग-अलग क्रियाओं को दोनों को रद्दीकरण कहा जाता है। WireGuard पर, एक पीयर केवल अपनी सार्वजनिक कुंजी से अधिकृत होता है जो AllowedIPs प्रविष्टि के साथ पीयर अनुभाग में दिखती है, इसलिए लैपटॉप से कॉन्फ़िग फ़ाइल हटाने से सर्वर पर कुछ नहीं बदलता। पीयर ब्लॉक हटाएँ और जिन पीयर को रख रहे हैं उन्हें गिराए बिना फ़ाइल फिर से लागू करें, जैसा wg(8) मैनुअल बताता है:
wg show
wg set wg0 peer <CLIENT_PUBLIC_KEY> remove
wg syncconf wg0 <(wg-quick strip wg0)wg syncconf वह हिस्सा है जो आपको रखरखाव विंडो बचाता है। यह फ़ाइल से इंटरफ़ेस को उसी जगह फिर से बनाता है, इसलिए एक पीयर हटाने से वह टनल नहीं टूटती जिसे बाकी सब उपयोग कर रहे हैं। अगर आप एक पीयर के बजाय पूरा होस्ट सेवानिवृत्त कर रहे हैं, तो क्रम फिर भी मायने रखता है, क्योंकि उन कुंजियों पर कहीं और भरोसा हो सकता है।
X.509 सेटअप में रद्द करने का चरण फ़ाइल नहीं, प्रमाणपत्र है: openssl ca -revoke client.crt और फिर openssl ca -gencrl -out crl.pem। इसका असर केवल वहीं होता है जहाँ सत्यापनकर्ता इसे पढ़ता है, यानी OpenVPN सर्वर जिसमें crl-verify कॉन्फ़िगर है और बाद में फिर से लोड किया गया है। अगर यह गेटवे उस CA का एकमात्र उपभोक्ता है, तो CRL उस दिन महत्व खो देता है जिस दिन वह मरती है; अगर वही CA दूसरे गेटवे के लिए हस्ताक्षर करती है, तो जो प्रमाणपत्र आपने कभी रद्द नहीं किया वह वहाँ काम करता रहता है।
खाते तीसरा मामला हैं और सबसे अधिक छूटा जाने वाला मामला। जब गेटवे RADIUS, LDAP या किसी होस्टेड पहचान प्रदाता के विरुद्ध प्रमाणित करता था, तो खाता VPN के बाहर रहता है। इसे निर्देशिका में अक्षम करें। सर्वर पर उपयोगकर्ता स्टैंज़ा हटाने से एक वैध क्रेडेंशियल बचा रहता है जिसे प्रतिस्थापन एंडपॉइंट उसी क्षण स्वीकार करेगा जब वह उसी निर्देशिका की ओर इंगित करेगा।
लिसनर बंद करें और उन तक के रास्ते भी
सेवा को ऐसे रोकें जो रीबूट में टिके, फिर यूनिट स्थिति के बजाय सॉकेट सूची से पुष्टि करें। systemctl disable --now wg-quick@wg0 इंटरफ़ेस रोकता है और wg-quick द्वारा जोड़े गए रूट तथा नियम हटाता है; systemctl disable --now openvpn-server@server टेम्पलेट OpenVPN इंस्टेंस के लिए वही करता है। दोनों में से किसी के बाद ss -lunp और ss -ltnp चलाएँ। पुराने पोर्ट के लिए खाली परिणाम ही एकमात्र प्रमाण है जो गिना जाता है।
wg-quick ने जो जोड़ा, wg-quick उसे हटाता है। आपने हाथ से जो जोड़ा वह रहता है: एक स्थायी NAT नियम, फ़ायरवॉल अनुमति, राउटर पोर्ट-फ़ॉरवर्ड, क्लाउड सुरक्षा-समूह का इनग्रेस नियम, लोड-बैलेंसर लिसनर। इन्हें स्पष्ट रूप से हटाना पड़ता है, और DNS रिकॉर्ड भी, यानी A, AAAA और नाम की ओर इंगित कोई भी CNAME। मृत होस्ट पर रिज़ॉल्व होने वाला नाम उस नाम से अलग तरह से विफल होता है जो रिज़ॉल्व नहीं होता, और वह अंतर किसी को एक दोपहर का खर्चा कराएगा।
जो प्रति आप भूलते हैं वही क्लोन है। बैकअप से पुनर्स्थापित स्नैपशॉट या VM अब भी होस्ट कुंजियाँ और पुरानी पीयर सूची रखता है, और अगर कुछ उसे उसी पते पर वापस लाता है, तो क्लाइंट उस सेवा से फिर जुड़ते हैं जिसे आप सेवानिवृत्त मानते हैं। बैकअप सेट को सेवानिवृत्त सेवा का बताकर लेबल करें और उसे स्वचालित पुनर्स्थापन पथों से बाहर रखें।
जो अब भी पुराने एंडपॉइंट की ओर इंगित करता है उसका पीछा करें
कैश की गई प्रोफ़ाइलें DNS से अधिक जीती हैं। संख्यात्मक पते वाला सहेजा गया कॉन्फ़िग रिकॉर्ड जाने के बाद भी डायल करता रहता है, और हमेशा चालू क्लाइंट हर नेटवर्क बदलाव पर फिर कोशिश करता है। यह एक्सेस नहीं बल्कि शोर है, क्योंकि लिसनर बंद है, पर यह जानना कि आप दोनों में से किसे देख रहे हैं, तय करता है कि टिकट का जवाब कैसे दें।
फिर उन निर्भरताओं को साफ़ करें जिन्हें कोई VPN के अंतर्गत संग्रहीत नहीं करता: पोर्ट को टटोलने वाली अपटाइम जाँचें, होस्ट से कॉन्फ़िग खींचने वाले बैकअप कार्य, पीयर प्रविष्टियाँ धकेलने के लिए उपयोग किए गए ऑटोमेशन क्रेडेंशियल, केवल इस एंडपॉइंट के लिए बनाए गए रिकवरी खाते। हर एक अपने जीवनकाल और अपने मालिक वाला एक्सेस पथ है, इसलिए हर एक को चुपचाप हटाने के बजाय निर्णय मिलता है।
सत्यापित करें, फिर लिख लें
सेवानिवृत्ति तब पूरी होती है जब बाहर से किया गया परीक्षण उसी तरह विफल हो जैसी आपको अपेक्षा है। ऐसे नेटवर्क से जिसे आप नियंत्रित नहीं करते, पुराने पते और पोर्ट से जुड़ें। फ़िल्टर या अस्वीकृत परिणाम ही सफलता का मामला है। क्लाइंट ऐप में पुष्टि करें कि प्रोफ़ाइल हटाई गई है, सिर्फ़ बंद नहीं की गई, और कोई प्रबंधन प्रोफ़ाइल उसे चुपचाप फिर नहीं जोड़ती।
फिर दर्ज करें कि आपने क्या किया: एंडपॉइंट, तारीख, रद्द की गई कुंजियाँ और प्रमाणपत्र, अक्षम किए गए खाते, बैकअप कहाँ रहते हैं। आगे कोई पुराना कॉन्फ़िग पाए तो उसे बिना अनुमान लगाए जवाब देना होगा कि वह रद्द हुआ था या केवल हटाया गया, और टिकट में एक छोटी तालिका यह कर देती है।
टिकट बंद करने से पहले:
- क्लाइंट प्रोफ़ाइल हटाई या बदली गईं, अज्ञात उपकरण सुलझाए गए
- पीयर हटाए गए और कॉन्फ़िग फिर लागू हुआ, या प्रमाणपत्र रद्द हुए और CRL प्रकाशित हुआ
- निर्देशिका खाते अक्षम, केवल स्थानीय फ़ाइलें हटाई गईं ऐसा नहीं
- सेवा अक्षम, पुराने पोर्ट पर कोई लिसनर नहीं बचा
- फ़ायरवॉल, पोर्ट फ़ॉरवर्ड, सुरक्षा समूह और DNS प्रविष्टियाँ हटाई गईं
- बैकअप लेबल किए गए, स्नैपशॉट पुनर्स्थापन पथों से बाहर
- मॉनिटरिंग और ऑटोमेशन क्रेडेंशियल सेवानिवृत्त
प्रतिस्थापन को अलग से सत्यापित करें, ऐसे क्लाइंट से जिसके पास कभी पुरानी प्रोफ़ाइल नहीं थी। वही एक परीक्षण बताता है कि आपने सेवा सेवानिवृत्त की या केवल समस्या का नाम बदला।