घर के WireGuard टनल को LAN से वापसी मार्ग चाहिए
हैंडशेक आसान हिस्सा है। राउटर और गेटवे के बीच काम का बँटवारा तय करें, लैपटॉप का स्रोत अछूता रखें और LAN को वापसी मार्ग दें।
घर तक पहुँच एक निजी सेवा है, दूसरा इंटरनेट आउटलेट नहीं। WireGuard राउटर के पीछे Linux बॉक्स पर समाप्त होता है, राउटर अपना मौजूदा काम बनाए रखता है, और लैपटॉप टनल से केवल घर का प्रीफ़िक्स भेजता है। कौन सा उपकरण फ़ॉरवर्ड करता है और कौन समाप्त करता है, यही वह निर्णय है जिससे हर बाद का नियम निकलता है। यह बँटवारा गलत हुआ तो आप ऐसे NAT को डीबग करेंगे जिसे जोड़ने का इरादा कभी नहीं था।
तय करें कौन फ़ॉरवर्ड करता है और कौन समाप्त करता है
सार्वजनिक प्रवेश राउटर के पास है: वह UDP पैकेट स्वीकार करता है और Linux होस्ट को देता है। उस होस्ट के पास WireGuard श्रोता और LAN में फ़ॉरवर्ड करने का निर्णय है। व्यवहार में मैपिंग UDP 51820 को 192.168.50.10 पर भेजती है, और एप्लिकेशन का अपना पोर्ट बंद रहता है। भूमिकाएँ अलग रखने से फ़ायरवॉल छोटा रहता है।
इंटरफ़ेस बनाने से पहले पता योजना लिखें। राउटर 192.168.50.1, गेटवे 192.168.50.10, सेवा 192.168.50.20, टनल 10.77.0.0/24 जिसमें गेटवे .1 और लैपटॉप .2 है। टनल की श्रेणी उस नेटवर्क से ओवरलैप नहीं होनी चाहिए जहाँ लैपटॉप पहले से पहुँचता है, वरना गंतव्य अस्पष्ट हो जाते हैं. कैरियर-ग्रेड NAT या ऊपर का राउटर आने वाली पहुँच को रोक सकता है, और कोई स्थानीय पोर्ट फ़ॉरवर्डिंग उसे ठीक नहीं करती।
कुंजियाँ बदलें, फिर AllowedIPs का आकार तय करें
हर सिरे के लिए अलग कुंजी जोड़ी बनाएँ और केवल सार्वजनिक कुंजियाँ सत्यापित चैनल से भेजें। गेटवे की peer प्रविष्टि केवल लैपटॉप के टनल स्रोत को अनुमति देती है, क्योंकि घर का LAN लैपटॉप के पीछे नहीं, गेटवे के पीछे है। उस प्रविष्टि में LAN डालना ऐसी टोपोलॉजी बताता है जो आपने बनाई नहीं।
[Interface]
Address = 10.77.0.2/32
PrivateKey = LAPTOP_PRIVATE_KEY_BASE64
[Peer]
PublicKey = HOME_PUBLIC_KEY_BASE64
Endpoint = home-vpn.example.com:51820
AllowedIPs = 192.168.50.0/24, 10.77.0.1/32AllowedIPs घर का प्रीफ़िक्स और गेटवे का टनल पता है, कभी 0.0.0.0/0 नहीं, ताकि सामान्य ब्राउज़िंग अपना स्थानीय मार्ग रखे। एक ही कॉन्फ़िगरेशन स्वामी रखें, और उसी इंटरफ़ेस को कभी दूसरे नेटवर्क प्रबंधक से न जोड़ें।
वापसी मार्ग वह हिस्सा है जिसे लोग छोड़ देते हैं
यह डिज़ाइन लैपटॉप के 10.77.0.2 स्रोत को रखता है, उसे गेटवे के रूप में मास्क नहीं करता, इसलिए घर के उपकरणों को जानना होगा कि उसका उत्तर कैसे दें। घर के राउटर पर 10.77.0.0/24 के लिए स्थिर मार्ग जोड़ें जिसमें 192.168.50.10 अगली हॉप है, और पढ़ें कि wg-quick AllowedIPs से क्या निकालता है, उसके संदर्भ में। उस मार्ग के बिना, पूरा हुआ हैंडशेक ऐसे एप्लिकेशन उत्तरों के साथ रहता है जो कभी नहीं आते।
अगर राउटर वह मार्ग नहीं उठा सकता, तो प्रलेखित वापसी डिज़ाइन चुनें। चुपचाप NAT जोड़ना इसके बदले वही स्रोत मॉडल बदल देता है जो आपने अभी लिखा।
एक सेवा की अनुमति दें, सबनेट की नहीं
गेटवे पर IPv4 फ़ॉरवर्डिंग सक्षम करें और फ़ायरवॉल के तीन दायित्व अलग रखें: WireGuard श्रोता को स्वीकार करना, लैपटॉप के स्रोत को केवल 192.168.50.20 पर फ़ॉरवर्ड करना, और बाकी घर का नेटवर्क उस peer के लिए बंद रखना। नियमों को पहले से प्रयुक्त फ़ायरवॉल प्रबंधक में समाहित करें, उसे खाली न करें। पूरे घर के प्रीफ़िक्स का मार्ग उसके भीतर हर उपकरण के उपयोग की अनुमति नहीं है।
एप्लिकेशन का अपना प्रमाणीकरण और होस्ट फ़ायरवॉल अलग द्वार हैं। उस सेवा का नाम दें जिसे नियम-समूह अनुमति देता है, ताकि अगला समीक्षक उसे इच्छित कार्य से मिला सके।
बाहर से परखें, फिर साफ़ तरीके से हटाएँ
प्रोफ़ाइल उनके स्वामी के माध्यम से चालू करें, हैंडशेक की पुष्टि करें, फिर स्वीकृत बाहरी नेटवर्क से इच्छित एप्लिकेशन चलाएँ और उत्तर जाँचें। ऐसी घरेलू सेवा आज़माएँ जो अस्वीकृत रहनी चाहिए, क्योंकि अनुमति देने वाला नियम तब तक अदृश्य रहता है जब तक कोई उसका उपयोग न करे। HTTPS के लिए प्रमाणपत्र पर लिखा नाम इस्तेमाल करें और सत्यापन चलने दें; कच्चा पता टाइप करके चेतावनी पार करना मार्ग के बारे में कुछ सिद्ध नहीं करता। PersistentKeepalive वैकल्पिक है: निष्क्रिय समय के बाद NAT में बँधे peer की मदद करता है, पर यह न गुम मार्ग है न अनुमति का सुधार।
गतिशील सार्वजनिक पते को DNS अद्यतन चाहिए, और बदलाव के बाद लैपटॉप को अपना एंडपॉइंट फिर से हल करना होता है; नए DNS रिकॉर्ड कॉन्फ़िगर किए गए एंडपॉइंट को नहीं हिलाते। लैपटॉप को संग्रहीत और सक्रिय कॉन्फ़िगरेशन से उसका peer हटाकर सेवानिवृत्त करें; केवल लैपटॉप प्रोफ़ाइल मिटाने से गेटवे का प्राधिकरण रद्द नहीं होता।