तीन रचना एकच प्रयोगशाळेतील समस्या सोडवतात: एका लहान LAN ला WireGuard सहकाऱ्यामार्फत बाहेर पडायचे आहे, तर गेटवे स्वतः आपला नेहमीचा वरचा दुवा टिकवून ठेवतो. मोहक निमित्त म्हणजे राउटरचा डीफॉल्ट मार्ग बोगद्यात हलवणे, पण त्यामुळे बॉक्सचाच व्यवस्थापन मार्ग आणि तो पुढे पाठवत असलेले बाकी सर्व तुटते. रोचक पर्याय म्हणजे एका इंटरफेस आणि एका प्रीफिक्सपुरता मर्यादित धोरण-आधारित राउटिंग. तुमच्याकडे खरोखर असलेल्या मशीनबद्दल तीन प्रश्नांची उत्तरे देऊन यातून निवडा.

बाहेर पडणे कुठे राहते ते ठरवा

पहिला प्रश्न: हा होस्ट दुसऱ्या कशासाठीही पुढे पाठवतो का? समर्पित प्रयोगशाळा गेटवे डीफॉल्टने सर्व टाकून देणाऱ्या फॉरवर्डिंग धोरणासह राहू शकतो. उत्पादनाच्या जबाबदाऱ्या असलेला राउटर तसे करू शकत नाही, आणि व्यवस्थापित फायरवॉलवर स्पर्धक नियमसंच चढवणे हाच व्यत्यय नियोजित करण्याचा मार्ग आहे. दुसरा: रीबूटमधून दोन धोरण वस्तू आणि त्यांचा क्रम तुम्ही ठेवू शकता का? तिसरा: तुमचा सहकारी तुमच्या बोगद्याच्या स्रोत पत्त्यास परवानगी देतो आणि इंटरनेट बाहेर पडणे देतो का? फक्त खाजगी नेटवर्क उघड करणारा सहकारी वेगळे उत्पादन आहे, आणि कोणताही स्थानिक राउटिंग बदल ते दुरुस्त करत नाही. कोणतेही उत्तर नाही असेल, तर बाहेर पडणे त्याऐवजी नावांच्या जागेत किंवा एकदाच वापरल्या जाणाऱ्या व्हर्च्युअल मशीनमध्ये ठेवा.

नावांची जागा किंवा VM स्मृती खर्च करते आणि तुम्हाला स्वच्छ स्फोट त्रिज्या देते. धोरण-आधारित राउटिंग दोन नियम खर्च करते आणि दोषनिवारणासाठी एकच बॉक्स ठेवते.

तुमच्या स्रोतास परवानगी देणारे बाहेर पडणे निवडा

या प्रयोगशाळेतील बहुतेक अपयश एकही फायरवॉल नियम अस्तित्वात येण्याआधीच होतात. बाहेर पडण्याच्या ऑपरेटरने भाषांतरानंतर तुमचे पॅकेट वाहून नेणाऱ्या स्रोत पत्त्याचा स्वीकार केला पाहिजे, आणि या रचनेत तो LAN प्रीफिक्स नसून बोगद्याचा पत्ता आहे. म्हणूनच मास्करेडिंग सुरुवातीपासूनच रचनेचा भाग आहे, नंतरची जोड म्हणून नाही.

ऑपरेटरशी तीन गोष्टी निश्चित करा: सहकारी तुमच्या बोगद्याच्या पत्त्यास परवानगी देतो, तो स्वतःवर संपण्याऐवजी IPv4 पुढे पाठवतो, आणि तो बाहेर जाणारे NAT लागू करतो. पहिल्याशिवाय तुमचे पॅकेट पोहोचतात आणि नाहीसे होतात. तिसऱ्याशिवाय ते खाजगी स्रोतासह बाहेर पडतात आणि पुढच्या टप्प्यावर मरतात. मग wg-quick स्वतःचा डीफॉल्ट मार्ग बसवत नाही याची खात्री करा, ज्याला Table = off प्रतिबंध करते; ते सेटिंग मार्ग तयार होणे दाबते, सहकाऱ्याच्या AllowedIPs तपासण्या किंवा त्याची DNS हाताळणी नाही.

दोन धोरण वस्तू दिशा देण्याचे काम करतात

दिशा देण्यासाठी तक्ता आणि नियम लागतो. तक्त्यात दोन मार्ग असतात: LAN इंटरफेसातून बाहेर जाणारा LAN प्रीफिक्स आणि बोगद्यातून बाहेर जाणारा डीफॉल्ट. नियम LAN इंटरफेसवर येणारा आणि तो प्रीफिक्स वाहणारा रहदारी तक्त्यात पाठवतो. स्रोत जुळणीसोबत iif निवडक वापरा, कारण गेटवेचे स्वतःचे WireGuard पॅकेट स्थानिक पातळीवर तयार होतात आणि येणाऱ्या इंटरफेसशी कधीच जुळत नाहीत.

रक्षक शोधण्यापूर्वी येतो, नंतर नाही. तोच क्रम हा रचनेचा संपूर्ण सुरक्षा गुणधर्म आहे.

रक्षक हा त्याच निवडकावरील दुसरा नियम आहे ज्याचा निर्णय unreachable आहे. बोगदा वर असताना शोध जिंकत राहावा म्हणून त्याला उच्च संख्यात्मक प्राधान्य द्या. बोगद्याचा मार्ग नाहीसा झाला की शोध काहीही परत देत नाही आणि रक्षक शोध थांबवतो, त्याला मुख्य तक्त्यातील WAN डीफॉल्टपर्यंत पडू देत नाही.

ip rule add from 192.168.50.0/24 iif lan0 lookup 51861 pref 1000
ip rule add from 192.168.50.0/24 iif lan0 unreachable pref 1001
ip route add table 51861 default dev wg0

मागे हटण्याची पोकळी उघडण्यापूर्वी बंद करा

आधी रक्षक आणि नंतर शोध बसवा. उलट केल्यास काही सेकंदांची खिडकी राहते, ज्यात चाचणी क्लायंटची रहदारी वरच्या दुव्यापर्यंत पोहोचू शकते.

गाळणी चित्र पूर्ण करते. forward हुकमध्ये चाचणी प्रीफिक्ससाठी LAN ते बोगदा दिशा आणि प्रस्थापित परतीची दिशा स्वीकारा, नंतर बाकी सर्व टाकून द्या; त्या प्रीफिक्सचे बोगदा इंटरफेसवरील NAT postrouting मध्ये जाते. फॉरवर्ड शृंखलेवर policy drop ठेवणे हेच गहाळ मार्गाला गळतीऐवजी शांततेत बदलते. उलट मार्गाच्या गाळणीला बोगदा इंटरफेसवर सैल मोड लागतो, कारण डीकॅप्स्युलेशननंतर येणाऱ्या सार्वजनिक स्रोताचा सर्वोत्तम उलट मार्ग WAN बाजूला असतो. Linux all आणि प्रति-इंटरफेस मूल्यांपैकी उच्च घेतो, म्हणून बोगदा इंटरफेस सेट करणे म्हणजे सर्वत्र पडताळणी कमकुवत करणे नव्हे.

अपयशाच्या प्रसंगाने ते सिद्ध करा

कर्नेलला नेमका प्रश्न विचारा: क्लायंटचा स्रोत पत्ता आणि तो ज्या इंटरफेसवर येतो त्याचे नाव सांगा. दोन्हीशिवाय शोध दुसऱ्या प्रश्नाचे उत्तर देतो आणि दोन्ही स्थितींत बरोबर दिसतो. नंतर फायरवॉल काउंटर, सहकाऱ्याची हस्तांतरण स्थिती आणि क्लायंटची स्वतःची सेवा पहा.

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

संबंधित लेख