Wireguard के बारे में
WireGuard एक हल्का VPN है जो Linux कर्नल में ही शामिल है। यह पब्लिक की (public key) पर चलता है और इसका कॉन्फ़िगरेशन कुछ ही पंक्तियों का होता है। इसका कोड छोटा है, इसलिए पुराने VPN की तुलना में उसकी जाँच करना आसान है, और टनल लगभग तुरंत चालू हो जाता है। डेवलपर और छोटी टीमें, जो अपना निकासी बिंदु (exit point) खुद नियंत्रित करना चाहती हैं, इसका उपयोग करती हैं।
आपका VPS डिलीवर होने पर wireguard पैकेज इंस्टॉल रहता है, और wg0 इंटरफ़ेस कॉन्फ़िगर होकर wg-quick@wg0 से चालू हो चुका होता है। सर्वर UDP पोर्ट 51820 पर सुनता है और निजी नेटवर्क 10.8.0.0/24 है (सर्वर का पता 10.8.0.1 है)। IPv4 रूटिंग और NAT (masquerade) चालू हैं, ताकि आपके क्लाइंट का ट्रैफ़िक सर्वर के पब्लिक IP से बाहर निकले।
पहला क्लाइंट पहले से बना हुआ है, जिसमें सामान्य कुंजियों के अलावा एक प्री-शेयर्ड की (pre-shared key) भी है। इसका कॉन्फ़िगरेशन /root/wg-client.conf में है और मोबाइल ऐप के लिए QR कोड /root/wg-client-qr.txt में। आपको बस इसे इम्पोर्ट करना है।
Wireguard के साथ आप क्या कर सकते हैं
पहले से कॉन्फ़िगर फुल टनल
बनाया गया क्लाइंट AllowedIPs = 0.0.0.0/0 इस्तेमाल करता है, यानी सारा IPv4 ट्रैफ़िक VPS से होकर जाता है। क्लाइंट का DNS 1.1.1.1 पर सेट है।
क्लाइंट कॉन्फ़िग और QR कोड
/root/wg-client.conf फ़ाइल को WireGuard क्लाइंट में जस का तस इम्पोर्ट किया जा सकता है। /root/wg-client-qr.txt का QR कोड टर्मिनल में दिखता है और मोबाइल ऐप से स्कैन हो जाता है।
हर पीयर के लिए प्री-शेयर्ड की
wg genpsk से बनी एक कुंजी पब्लिक की के आदान-प्रदान के ऊपर जुड़ती है और कनेक्शन की सुरक्षा बढ़ाती है। संवेदनशील फ़ाइलें मोड 600 में बनती हैं।
बूट पर अपने-आप शुरू
wg-quick@wg0 सेवा systemd के साथ सक्षम है। सर्वर रीस्टार्ट होने के बाद टनल अपने-आप लौट आता है।
NAT और फ़ॉरवर्डिंग पहले से चालू
IPv4 फ़ॉरवर्डिंग /etc/sysctl.d/99-wireguard.conf में चालू है। FORWARD और masquerade के iptables नियम wg0 शुरू होने पर लगते हैं और बंद होने पर हट जाते हैं।
Wireguard के साथ शुरुआत करें
ऑर्डर से प्रोडक्शन तक कुछ ही मिनटों में।
- 1
WireGuard के साथ VPS ऑर्डर करें
पेरिस या फ्रैंकफ़र्ट में एक Linux VPS चुनें (Debian 12, Debian 13, Ubuntu 20.04, 22.04 या 24.04)। ऑर्डर फ़ॉर्म के «Applications» टैब में WireGuard पर टिक करें।
- 2
कनेक्ट करें और क्लाइंट फ़ाइल लें
सर्वर डिलीवर होने के बाद मिले क्रेडेंशियल से SSH सत्र खोलें। जाँचें कि टनल चल रहा है, फिर QR कोड दिखाएँ या कॉन्फ़िगरेशन फ़ाइल अपने कंप्यूटर पर कॉपी करें।
Bashssh root@SERVER_IP systemctl status wg-quick@wg0 cat /root/wg-client-qr.txt # depuis votre poste : scp root@SERVER_IP:/root/wg-client.conf . - 3
कॉन्फ़िगरेशन इम्पोर्ट करके टेस्ट करें
मोबाइल WireGuard ऐप से QR कोड स्कैन करें, या डेस्कटॉप ऐप में wg-client.conf इम्पोर्ट करें। Linux पर एक ही कमांड काफ़ी है, फिर देखें कि handshake हुआ या नहीं।
Bashsudo wg-quick up ./wg-client.conf sudo wg show - 4
प्रोडक्शन के लिए सुरक्षित करें
सुनिश्चित करें कि UDP पोर्ट 51820 खुला है और बाकी खुले पोर्ट सीमित रखें। IP की जगह नाम इस्तेमाल करना चाहें तो DNS रिकॉर्ड बनाने के बाद क्लाइंट की Endpoint पंक्ति को YOUR_DOMAIN:51820 से बदलें। /etc/wireguard का बैकअप सर्वर के बाहर रखें।
Bashtar czf wg-backup.tgz /etc/wireguard /root/wg-client.conf
Wireguard के उपयोग
सार्वजनिक Wi-Fi पर सुरक्षा
होटल, ट्रेन या कैफ़े से आपका IPv4 ट्रैफ़िक एन्क्रिप्टेड टनल के ज़रिए पहले आपके VPS तक पहुँचता है और फिर इंटरनेट पर जाता है।
स्थायी आउटगोइंग IP पाना
आपका निकासी IP VPS का IP बन जाता है, इसलिए फ़ायरवॉल, डेटाबेस या एडमिन API पर सिर्फ़ एक पता अनुमत करना संभव हो जाता है।
अपने डिवाइस आपस में जोड़ना
कंप्यूटर, फ़ोन और दूरस्थ मशीनें 10.8.0.0/24 नेटवर्क में जुड़ती हैं और अपने निजी पतों से एक-दूसरे तक पहुँच सकती हैं, जहाँ सर्वर केंद्रीय बिंदु का काम करता है।
पेरिस या फ्रैंकफ़र्ट चुनना
ऑर्डर के समय VPS की लोकेशन चुनकर आप तय करते हैं कि ट्रैफ़िक किस क्षेत्र से निकले, जैसे किसी सेवा को फ्रांस या जर्मनी से परखने के लिए।
Wireguard से जुड़े सामान्य प्रश्न
SSH से कनेक्ट होकर /root/wg-client.conf पढ़ें, या cat /root/wg-client-qr.txt से QR कोड दिखाएँ। आप फ़ाइल को scp root@SERVER_IP:/root/wg-client.conf . से अपने कंप्यूटर पर भी कॉपी कर सकते हैं।
Wireguard के बारे में और जानें
इंस्टॉल की गई फ़ाइलें और सेवाएँ
/etc/wireguard/wg0.conf: सर्वर का कॉन्फ़िगरेशन (प्राइवेट की, पीयर client1, PostUp और PostDown नियम)।/root/wg-client.conf: पहले क्लाइंट का कॉन्फ़िगरेशन।/root/wg-client-qr.txt: इसी कॉन्फ़िगरेशन का QR कोड, जिसेcatसे दिखाया जा सकता है।/etc/sysctl.d/99-wireguard.conf:net.ipv4.ip_forwardचालू करती है।/opt/install-wireguard.sh: डिलीवरी के समय चलाई गई इंस्टॉलेशन स्क्रिप्ट।
क्लाइंट को पता 10.8.0.2/32 मिलता है। Endpoint में लिखा पब्लिक पता वही है जो इंस्टॉलेशन के समय पहचाना गया था।
दूसरा डिवाइस जोड़ना
हर डिवाइस की अपनी कुंजी-जोड़ी और अपना पता होना चाहिए (10.8.0.3, 10.8.0.4 आदि)। कुंजियाँ सर्वर पर बनाएँ, फिर wg0.conf में एक [Peer] ब्लॉक जोड़ें।
Bashcd /etc/wireguard umask 077 wg genkey | tee client2.key | wg pubkey > client2.pub wg genpsk > client2.psk
इसके बाद /etc/wireguard/wg0.conf में client2.pub और client2.psk की सामग्री AllowedIPs = 10.8.0.3/32 के साथ जोड़ें, फिर चल रहे टनल बंद किए बिना रीलोड करें:
Bashwg syncconf wg0 <(wg-quick strip wg0)
क्लाइंट फ़ाइल बनाने के लिए /root/wg-client.conf को आधार बनाएँ: PrivateKey और Address बदलें, और सर्वर की PublicKey तथा Endpoint वैसी ही रहने दें।
ध्यान देने योग्य बातें
बनाया गया क्लाइंट केवल IPv4 (0.0.0.0/0) रूट करता है। अगर आपके कंप्यूटर पर IPv6 उपलब्ध है, तो वह ट्रैफ़िक टनल से नहीं गुज़रेगा। अगर यह आपके लिए मायने रखता है, तो क्लाइंट पर IPv6 बंद कर दें।
क्लाइंट का DNS 1.1.1.1 है। कोई दूसरा रिज़ॉल्वर चाहिए तो क्लाइंट फ़ाइल की DNS पंक्ति बदल दें। /root/wg-client.conf को पासवर्ड की तरह सँभालें, क्योंकि उसमें क्लाइंट की प्राइवेट की है। इम्पोर्ट करने के बाद फ़ालतू प्रतियाँ हटा दें।
Linux सर्वर प्रशासन की और गाइड के लिए हमारे ट्यूटोरियल या Linux VPS पेज देखें।