घरातील NAT तुमच्या VPN इंटरफेसचे संरक्षण का करत नाही
घरातील राउटर बोगदा पुढे पाठवतो, पण होस्ट डिक्रिप्ट केलेल्या पॅकेटचा निर्णय घेतो. श्रोता, आतील मार्ग आणि प्रवेश धोरण वेगळे वाचा.
घरातील राउटरमागे पोर्ट फॉरवर्डिंगशिवाय असलेले लॅपटॉप अजूनही VPN मधून येणारे SSH कनेक्शन स्वीकारतात। हा विरोधाभास नाही, कारण दोन वेगळी उपकरणे दोन वेगळ्या पॅकेटचा निर्णय घेतात। राउटर एन्क्रिप्टेड वाहतूक पुढे पाठवतो, आणि होस्ट त्याच्या बोगदा इंटरफेसवर पोहोचणाऱ्या डिक्रिप्ट केलेल्या पॅकेटचे काय करायचे हे ठरवतो। हे दोन निर्णय वेगळे ठेवणे हाच संपूर्ण सराव आहे।
राउटर बोगदा पुढे पाठवतो, होस्ट पॅकेटचा निर्णय घेतो
एकही नियम पाहण्यापूर्वी दूरच्या स्रोतापासून सेवेपर्यंतचा मार्ग काढा। बाहेरील भाग VPN वाहतूक आहे, जो राउटर आणि गेटवे सांभाळतात। आतील भाग तेव्हा सुरू होतो जेव्हा एंडपॉइंट बोगद्याचा थर काढतो आणि होस्टला त्याच्या VPN पत्त्यावर पाठवलेले पॅकेट मिळते।
हे दोन भाग एकत्र केले की राउटर होस्ट घेत असलेल्या निर्णयाचे श्रेय घेतो। पोर्ट फॉरवर्डिंग पृष्ठ किंवा राउटर लॉग फक्त बाहेरील संवाद वर्णन करतात, आणि यापैकी कोणीही सांगत नाही की होस्ट कोणती डिक्रिप्ट केलेली वाहतूक स्वीकारेल। होस्ट आतील पॅकेटवर स्वतःचे प्रवेश धोरण लागू करतो, जसे इंटरफेसवर येणाऱ्या कोणत्याही पॅकेटवर लागू करतो। याच धोरणात एक्सपोजरचा प्रश्न प्रत्यक्षात सुटतो।
वाइल्डकार्ड श्रोता सार्वजनिक सेवा नाही
Linux मध्ये INADDR_ANY ला बाइंड करणे म्हणजे प्रत्येक स्थानिक पत्ता, म्हणून सेवा अशा बोगदा इंटरफेसवर उत्तर देऊ शकते ज्याला तिने कधीही नाव दिले नाही। IP सॉकेट संदर्भ ते बाइंडिंग वर्णन करतो, आणि श्रोत्यांच्या यादीतून निष्कर्ष काढण्यापूर्वी तो वाचणे योग्य आहे। वाइल्डकार्ड नोंद सॉकेटबद्दलची वस्तुस्थिती आहे, पोहोचण्याबद्दलचा दावा नाही।
खालील दोन ओळी एकाच सेवेच्या दोन वेगळ्या बाइंडिंग आहेत, आणि फरक म्हणजे इंटरफेस महत्त्वाचा आहे का या प्रश्नाचे संपूर्ण उत्तर। सर्वात आधी वाचा की सॉकेट कोणत्या पत्त्यावर बसले आहे।
ss -lntp "sport = :22"
LISTEN 0 4096 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=812,fd=3))
LISTEN 0 4096 10.8.0.6:22 0.0.0.0:* users:(("sshd",pid=812,fd=4))
पोर्टपर्यंत पोहोचू शकणाऱ्या रचनेचे नाव द्या
तीन रचना त्या इंटरफेसवर पॅकेट ठेवतात, आणि त्यांचे मालक वेगळे आहेत। योग्य रचनेचे नाव देणे कोणाला धोरण बदलायचे आहे हे ठरवते।
| Arrangement | What reaches the port | Where the decision lives |
|---|---|---|
| Another permitted VPN peer | A packet from the same tunnel subnet | Gateway forwarding policy and host input rules |
| A deliberate public forward | Traffic the gateway publishes on purpose | Gateway service definition |
| A subnet routed behind the gateway | Client traffic from the far side | Gateway route and host input rules |
सार्वजनिक निर्गम पत्ता दाखवणारा ब्राउझर निकाल तीनांपैकी कोणाबद्दलही काही सांगत नाही, कारण तो बाहेर जाणारी वाहतूक कशी बाहेर पडते हे सांगतो, आत येणाऱ्या वाहतुकीला काय परवानगी आहे ते नाही। त्याऐवजी श्रोता आणि सेवा लॉगमधील स्रोत पत्त्यापासून मागे काम करा। स्रोत दुसरा बोगदा सहकारी असेल, तर गेटवे धोरण हा मनोरंजक दस्तऐवज आहे। तो भाषांतरित पत्ता असेल, तर नियम बदलण्यापूर्वी भाषांतर शोधा।
सेवा तुमच्या हेतूच्या मार्गापुरती मर्यादित करा
SSH फक्त व्यवस्थापन मार्गातून हवे असेल, तर तो मार्ग स्रोत श्रेणी आणि इंटरफेस म्हणून लिहा। नंतर होस्टचे प्रवेश नियम नेटवर्क नावानुसार नाही तर इंटरफेस, गंतव्य आणि स्रोतानुसार मर्यादित करा, कारण खाजगी दिसणारे नाव कोणत्याही पत्त्याचे प्रतिनिधित्व करू शकते। पुढील समस्या सोडवणाऱ्यासाठी मार्ग ठेवा।
nft add rule inet filter input iifname "tun0" ip saddr 10.8.0.0/24 tcp dport 22 accept
nft list chain inet filter input
बोगदा इंटरफेस आणि व्यवस्थापन श्रेणीचे नाव घेणारा नियम हेतू एकाच ठिकाणी सांगतो। त्याची Wi-Fi नेटवर्कसाठी लिहिलेल्या नियमाशी तुलना करा, जो डिक्रिप्ट केलेल्या बोगदा वाहतुकीबद्दल काहीही सांगत नाही। दोन्ही स्तर असहमत असतील, तर होस्टचे धोरण हेच पॅकेटला भेटते।
लॉगिन आणि पॅच जिथे आहेत तिथेच ठेवा; पोर्टपर्यंत पोहोचणे कधीही तो वापरण्याच्या परवानगीइतके नव्हते। कोणत्याही अपरिचित स्रोतासाठी पत्ता कुटुंब आणि वेळ नोंदवा, आणि एखाद्या वैशिष्ट्याला किंवा भेद्यतेला दोष देण्यापूर्वी तपासा। प्रत्येक बोगदा सहकारी आत येऊ देणारा नियम व्यवस्थापन सबनेट आत येऊ देणाऱ्यापेक्षा वेगळी रचना आहे, आणि कोणतीही लॉग ओळ कोणाचा हेतू होता हे सांगणार नाही।
दुरुस्ती एका यशासह आणि एका नकारासह स्वीकारा
दोन्ही अर्धे सिद्ध करा: एक मंजूर कनेक्शन यशस्वी होते आणि एक वगळलेला मार्ग नाकारला जातो। नकार हा तो अर्धा आहे जो लोक वगळतात, आणि तोच दाखवतो की नियम काम करत आहे, परवानगी देणाऱ्या डीफॉल्टच्या शेजारी उभा नाही। वगळलेल्या बाजूने चाचणी करा, याबद्दल विचार करण्याऐवजी।
पुन्हा जोडल्यानंतर जोडीची पुनरावृत्ती करा, कारण वेगळ्या इंटरफेस नावाने परत येणारा बोगदा जुन्यासाठी मर्यादित नियम शांतपणे टाळू शकतो। जी मर्यादा महत्त्वाची आहे ती होस्ट प्रत्यक्षात मिळणाऱ्या पॅकेटवर लागू करतो ती आहे।