VPN फायरवॉल हुक तोच नियम दोन वेळा का जोडतो
पुन्हा कनेक्ट झाल्यावर तुमचा हुक पुन्हा चालू शकतो, म्हणून इच्छित स्थितीसाठी रचना करा: स्वतःच्या साखळ्या, घालण्यापूर्वी एक चाचणी, एक क्रमबद्ध बदल आणि मर्यादित तोडणी।
हुक पहिल्यांदा काम करतो, आणि तीन पुन्हा कनेक्शननंतर साखळीत त्याच नियमाच्या तीन प्रती राहतात। काहीही मोठ्याने अयशस्वी झाले नाही; स्क्रिप्ट प्रत्येक वेळी चालल्यावर सांगितलेलेच करत होती। VPN हुक हे अशी संरचना क्रिया आहे जी एकापेक्षा जास्त वेळा चालू शकते, म्हणून त्याला मालक, इच्छित स्थिती आणि क्रमबद्ध बदल लागतो। या क्रमाने जा, आणि प्रती थांबतील।
एकही नियम लिहिण्यापूर्वी नियमांना मालक द्या
एकही नियम लिहिण्यापूर्वी हे एकत्रीकरण कोणत्या साखळीचे किंवा तक्त्याचे मालक आहे ते ठरवा। हुक तयार करतो आणि रिकामी करतो ती समर्पित साखळी मालकीचे सर्वात स्पष्ट स्वरूप आहे, कारण साफसफाई नंतर दुसऱ्या कोणाच्या धोरणाला हात न लावता ती साखळी काढू शकते। जर तुम्हाला सामायिक साखळीत नियम जोडावे लागत असतील, तर त्यांना टिप्पणीने चिन्हांकित करा जेणेकरून नंतरचा शोध नेमके तुमचेच सापडेल। मालकीच तोडणी सुरक्षित करते, आणि तोडणी हाच भाग आहे जो शांतपणे अयशस्वी होतो।
iptables -N VPN_HOOK 2>/dev/null || true
iptables -C INPUT -j VPN_HOOK 2>/dev/null || iptables -I INPUT -j VPN_HOOK
iptables -S VPN_HOOK
येथे टिप्पणी सजावट नाही। ती तुमचा नियम काढणे आणि योगायोगाने मिळताजुळता नियम काढणे यातील फरक आहे, आणि ती जतन केलेल्या नियमसंचात टिकून राहते। टिप्पणी एकदा चलात लिहा आणि जोडणारे, चाचणी करणारे किंवा हटवणारे प्रत्येक आदेश यात तीच मजकूर वापरा।
पुन्हा जोडण्याऐवजी इच्छित स्थितीची चाचणी करा
बोगदा वर असताना काय असावे ते लिहा: कोणते इंटरफेस, कोणता स्रोत आणि गंतव्य, कोणता प्रोटोकॉल आणि कोणता पोर्ट। नंतर प्रत्येक नियम चाचणी आणि त्यानंतर घालणे असे मांडा, जेणेकरून दुसऱ्यांदा चालल्यावर नियम सापडेल आणि काहीच होणार नाही। नियम असताना तपासणी आदेश शून्याने बाहेर पडतो, आणि स्क्रिप्टला नेमका तोच संकेत हवा असतो। iptables संदर्भ येथे वापरलेली तपासणी, जोडणी आणि घालणीची स्वरूपे नोंदवतो।
iptables -C VPN_HOOK -i tun0 -p tcp --dport 443 -j ACCEPT ||
iptables -A VPN_HOOK -i tun0 -p tcp --dport 443 -j ACCEPT
स्थानाबाबत सावध रहा। नियम तपासून सुरुवातीला घालणे पूर्वी प्रथम येणाऱ्या जाणीवपूर्वक नकाराच्या आधी परवानगी सरकवू शकते, त्यामुळे दुसऱ्यांदा चालल्यावर काहीही न जोडता वर्तन बदलते। तुमच्या स्वतःच्या साखळीत शेवटी जोडा, आणि त्या साखळीकडे उडी कुठे आहे यावरून क्रम नियंत्रित करा। साखळीत क्रम महत्त्वाचा असल्यास, नियम-दर-नियम ठिगळे लावण्याऐवजी ज्ञात यादीतून साखळी पुन्हा बनवा।
आवश्यक नियम स्थिर चाचणी म्हणून मांडता येत नसेल तर थांबा। याचा अर्थ सहसा इच्छित स्थिती अजून अस्पष्ट आहे।
टिकेल अशी आशा न धरता बदल क्रमबद्ध करा
हुकची दोन आवाहने एकमेकांवर येऊ शकतात, आणि दोन्ही कोणी जोडण्यापूर्वी नियम गायब असल्याचे पाहू शकतात। xtablesचा प्रतीक्षा पर्याय आदेशाला कुलूपाची वाट करून घेतो, पण दोन आदेशांत तपासणी-मग-जोडणी क्रम अणू बनवत नाही। संपूर्ण क्रिया तुमच्या स्वतःच्या कुलूपाने क्रमबद्ध करा, किंवा घोषित बॅच एका व्यवहारासारखी लागू करणारा व्यवस्थापक वापरा। nftables नंतरचे करू शकते, आणि ते उपलब्ध असलेल्या यजमानांवर त्याला प्राधान्य देण्याचे एक कारण आहे।
flock /run/vpn-hook.lock /usr/local/sbin/vpn-firewall-apply
nft -f /etc/nftables/vpn-hook.nft
तुम्ही कोणतीही पद्धत निवडा, महत्त्वाचा विभाग लहान ठेवा आणि पुन्हा प्रवेशयोग्य बनवा: अर्ध्यावर अयशस्वी होणारा हुक पुन्हा चालवण्यास सुरक्षित असावा। निकाल नोंदवा जेणेकरून वारंवार चालणे नियमांच्या संख्येवरून अंदाज न करता जर्नलमध्ये दिसेल। दोन वेगवेगळे पर्यवेक्षक हुकला बोलावू शकत असतील, तर प्रथम ते दुरुस्त करा; कोणतेही कुलूप दोन मालक दुरुस्त करत नाही।
फक्त तुमचेच तोडून काढा
तोडणीने बदली कनेक्शन त्याने निवृत्त केलेल्या कनेक्शनपासून वेगळे ओळखले पाहिजे, आणि कधीही सभ्य साफसफाई न मिळणाऱ्या घटनेला तोंड दिले पाहिजे। जोडण्यासाठी वापरलेल्या त्याच ओळखचिन्हांनी हटवा, आणि साफसफाई सोपी करण्यासाठी कधीही सामायिक साखळी रिकामी करू नका। कठोर थांब्यानंतर, खालचा हुक चालला असे गृहीत धरण्याऐवजी पुढील सुरुवातीला समेटाची फेरी चालवा।
iptables -D VPN_HOOK -i tun0 -p tcp --dport 443 -j ACCEPT
iptables -F VPN_HOOK
ip -brief link show type tun
इंटरफेसचे आयुष्यही रचनेचा भाग आहे। पुन्हा कनेक्शन वेगळ्या नावाचे उपकरण तयार करू शकते, त्यामुळे दुसऱ्या बोगद्याचे नाव कठोरपणे बांधून टाकणारा नियम वैध दिसत असतानाच जुना होतो। कनेक्शन स्वतः जी ओळख उघड करते तिला प्राधान्य द्या, आणि प्रत्येक वेळी चालवताना ती पुन्हा वाचा। तीन घटनांची स्वतंत्रपणे चाचणी करा: पुनरावृत्त कनेक्शन, बदली कनेक्शन आणि बंद होणे। अनुमत रहदारी तिन्हींतून प्रतींशिवाय जावी, आणि असंबंधित सेवा अस्पर्शित राहाव्यात।
हुककडे मालक, तो जोडतो त्या प्रत्येक नियमासाठी चाचणी, एक क्रमबद्ध मार्ग आणि फक्त स्वतःची स्थिती काढणारी तोडणी असेल तेव्हा ही चाल संपते। दोन वेळा चालवण्यास सुरक्षित हुक एकदा हुशार हुकापेक्षा जास्त मूल्यवान आहे।