Linux होस्टले आफ्नो मात्र SMTP सुरुङबाट पठाउनु अघि चार कुरा मिल्नुपर्छ: समर्पित तालिकामा मार्ग, ट्राफिक छान्ने नीति-नियम, पीयरले स्वीकार गर्ने स्रोत ठेगाना, र असममिति सहने फर्कने मार्ग। प्रत्येक आफ्नै असफलता ढाँचा भएको छुट्टै कन्फिगरेसन हो। तलको क्रमले असफलतालाई साँच्चै गलत भागतर्फ देखाउँछ। यो पोर्ट-विशेष राउटिङ कार्य हो, VPN पूर्वनिर्धारित मार्गको अनुरोध होइन।

पोर्ट नियम पूर्वनिर्धारित मार्ग होइन

स्थानीय रूपमा सिर्जना गरिएको TCP लाई गन्तव्य पोर्ट 25 सँग मिलाउने नियमले त्यो ट्राफिकलाई तपाईंले नाम दिनुभएको तालिकामा पठाउँछ। नियमले आफैं केही सिर्जना गर्दैन: यसले छान्छ, र तालिकामा प्याकेट बोक्न सक्ने मार्ग हुनुपर्छ। दुवैलाई जोड्दा एउटा प्रोटोकलको बाहिर जाने दिशा मात्र समेटिन्छ, त्यसैले अन्य होस्टका लागि फर्वार्डिङ, आउने मेल जडान र IPv6 यस व्यवस्थाबाहिर रहन्छन्। यसलाई VPN पूर्वनिर्धारितको सट्टा पोर्ट-विशेष नीति भन्नुले त्यो सीमा इमानदार राख्छ।

wg-quick का दुई सेटिङ पूर्वशर्त हुन्, नीतिको भाग होइनन्। AllowedIPs = 0.0.0.0/0 ले पीयरलाई मनपरी IPv4 गन्तव्य बोक्न दिन्छ, र Table = off ले त्यो प्रिफिक्सका लागि wg-quick लाई आफ्नै पूर्वनिर्धारित मार्ग स्थापना गर्नबाट रोक्छ। यी निर्देशनहरूलाई आफ्नै मार्ग नीति लागू गर्ने प्रबन्धकसँग नमिसाउनुहोस्, किनकि दुवै मुख्य तालिका कसको हो भन्नेमा सहमत हुनेछैनन्।

मार्ग, चयनक र रक्षक लेख्नुहोस्

अरू कसैले प्रयोग नगरेको तालिका नम्बर र प्राथमिकताको जोडी छान्नुहोस्, त्यसपछि त्यही क्रममा मार्ग, चयनक र रक्षक लागू गर्नुहोस्। तलका नम्बरहरू उदाहरण हुन्, आरक्षित मान होइनन्:

ip -4 route add default dev wg0 src 10.77.0.2 table 51825
ip -4 rule add priority 10000 iif lo ipproto tcp dport 25 lookup 51825
ip -4 rule add priority 10001 iif lo ipproto tcp dport 25 unreachable

iif lo ले नियमलाई स्थानीय उत्पत्तिको ट्राफिकमा सीमित गर्छ, र ipproto tcp dport 25 ले जडानको दिशा पहिचान गर्छ; ip-rule सन्दर्भ ले दुवै चयनकको दस्तावेजीकरण गर्छ। ती हालका कर्नेल र iproute2 संस्करणहरूमा छन्, र पुरानो प्रणालीमा नियम पूर्ण रूपमा अस्वीकार गरिन्छ, जुन लोड भएर केहीसँग नमिल्ने नियमभन्दा स्पष्ट असफलता हो।

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

स्रोत ठेगाना मिल्नुपर्छ

मार्गको src प्राथमिकताले आफ्नै स्रोत नबाँधेका जडानका लागि मात्र स्रोत भर्छ। यो अनुवाद होइन, र स्पष्ट बाइन्डिङलाई अगाडि पार्दैन, त्यसैले भौतिक ठेगानामा बाँधिएको डेमन त्यही ठेगानाबाट पठाइरहन्छ। यदि ठ्याक्कै यही भेटियो भने, डेमनकै सेटिङ बदल्नुहोस् वा जानाजान अनुवाद नीति डिजाइन गर्नुहोस्, किनकि ढिलो गरिएको सर्वव्यापी masquerade फरक परिणाम भएको फरक समाधान हो।

गेटवेमा, ग्राहकको पीयरले वास्तवमा प्राप्त गर्ने स्रोतलाई अधिकृत गर्नुपर्छ, त्यो फराकिलो गन्तव्य प्रिफिक्स होइन तर 10.77.0.2/32 हो। ग्राहकको 0.0.0.0/0 प्रत्येक गेटवे पीयरमा प्रतिलिपि गर्दा कुन पीयर कुन ट्राफिकको मालिक हो भन्ने अन्योल हुन्छ। गेटवेलाई फर्वार्डिङ, प्रवाहलाई अनुमति दिने फायरवाल नीति, र फर्कने मार्ग पनि चाहिन्छ, जसमा अपस्ट्रिमले निजी सुरुङ ठेगाना राउट गर्न नसक्दा बाहिर जाने अनुवाद पनि समावेश छ।

फर्कने मार्ग जाँच्नुहोस्, त्यसपछि स्थायित्व

कुनै पनि कुरामा विश्वास गर्नु अघि लुकअपहरू पढ्नुहोस्, किनकि तिनले प्रत्येक दिशाले कुन तालिका र कुन स्रोत पाउँछ देखाउँछन्। पोर्ट 25 मा एउटा गन्तव्य र पोर्ट 443 मा त्यही गन्तव्य पर्याप्त छ:

ip -4 route get 198.51.100.25 ipproto tcp dport 25
ip -4 route get 198.51.100.25 ipproto tcp dport 443

पहिलो लुकअपले wg0 र अभीष्ट स्रोत उल्लेख गर्नुपर्छ, र दोस्रोले सामान्य अपलिङ्क राख्नुपर्छ। जब अनुप्रयोगले आफ्नै ठेगाना बाँध्छ, त्यो ठेगानासहित from लुकअपमा थप्नुहोस्। wg0 सम्म पुगेर त्यसपछि स्थानीय रूपमा छोडिने उत्तर-दिशाले IPv4 रिभर्स-पाथ फिल्टरिङतर्फ संकेत गर्छ, किनकि बाहिर जाने पोर्टको मात्र नियमले रिभर्स लुकअपलाई सुरुङ छान्न बाध्य पार्दैन।

जहाँ असममित राउटिङ अधिकृत छ, त्यहाँ net.ipv4.conf.wg0.rp_filter=2 मार्फत इन्टरफेस-सीमित ढिलो मोड उपयुक्त हुन सक्छ, र पहिले all र इन्टरफेस मानहरूको प्रभावकारी अधिकतम जाँच्नु उचित छ। छोटो बाटोको रूपमा प्रमाणीकरण विश्वव्यापी रूपमा बन्द नगर्नुहोस्। त्यसपछि तालिका, प्राथमिकता र रक्षक कन्फिगरेसनको मालिकलाई सुम्पनुहोस्, र पुनः जडानपछि नयाँ जडान खोलेर छनोट अझै टिकेको पुष्टि गर्नुहोस्। याद राख्नुहोस्, स्थानीय SMTP श्रोताका उत्तरहरूले स्रोत पोर्ट 25 बोक्छन्, गन्तव्य पोर्ट 25 होइन, जुन छुट्टै नीति प्रश्न हो।

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