अपना WireGuard VPN क्यों चलाएं
किसी व्यावसायिक VPN का इस्तेमाल करने पर आपको उस कंपनी पर भरोसा करना होता है जिसकी आप स्वयं जांच नहीं कर सकते। आप उन्हें पैसे देते हैं, अपना सारा ट्रैफ़िक उनके सर्वरों से गुज़ारते हैं, और उनकी इस बात पर यकीन करते हैं कि वे कोई लॉग नहीं रखते। Self-hosted VPN इसे उलट देता है: आप एक सर्वर किराये पर लेते हैं, VPN खुद इंस्टॉल करते हैं, और आपके ट्रैफ़िक को देखने वाले केवल आप होते हैं। बीच में कोई provider नहीं होता जो उसे लॉग करे, बेचे, या कानूनी दबाव में उसे सौंप दे।
WireGuard इसे व्यावहारिक बनाता है। यह एक आधुनिक VPN protocol है — छोटा, तेज़ और सरल। पुराने स्टैक्स की लाखों पंक्तियों की तुलना में इसमें केवल कुछ हज़ार लाइनें हैं, जिससे इसे ऑडिट करना आसान और गलत तरीके से कॉन्फ़िगर करना मुश्किल है। एक साधारण VPS पर यह नगण्य CPU उपयोग के साथ पूरे कनेक्शन को संतृप्त कर सकता है। no-KYC, offshore VPS के साथ मिलकर, self-hosted WireGuard tunnel आपको एक ऐसा private exit point देता है जो केवल आपका है — और यह गाइड इसे शुरू से बनाती है।

आपको क्या चाहिए
पूरा सेटअप एक सर्वर और लगभग पंद्रह मिनट में हो जाता है:
- एक VPS। सबसे छोटा प्लान भी पर्याप्त है — WireGuard बेहद हल्का है। वह jurisdiction चुनें जहाँ से आप अपना ट्रैफ़िक दिखाना चाहते हैं। $7.50/माह से शुरू होने वाला ServPrivacy VPS पूरी root access के साथ काफी से ज़्यादा है।
- एक ताज़ा Linux इंस्टॉल। कोई भी हालिया Debian या Ubuntu काम करता है; नीचे दिए गए कमांड इन्हीं पर आधारित हैं। अन्य distributions में केवल package step अलग होता है।
- Root या sudo access और command line पर कुछ मिनट।
आपको कोई domain, control panel, या किसी third-party VPN software की ज़रूरत नहीं। WireGuard आधुनिक Linux kernel में ही शामिल है।
Step 1 — सर्वर पर WireGuard इंस्टॉल करें
SSH के जरिए अपने VPS से जुड़ें और WireGuard tools इंस्टॉल करें। Debian या Ubuntu पर यह एक कमांड से होता है: apt update && apt install -y wireguard। Kernel module किसी भी आधुनिक kernel पर पहले से मौजूद है, इसलिए यह केवल user-space tools इंस्टॉल करता है — wg और wg-quick — जिनसे आप tunnels प्रबंधित करते हैं।
यही पूरा इंस्टॉलेशन है। कोई अलग daemon कॉन्फ़िगर करने की, कोई account बनाने की, और सामान्य system updates से परे कुछ अतिरिक्त अपडेट रखने की कोई ज़रूरत नहीं।
Step 2 — Keys बनाएं और सर्वर config लिखें
WireGuard peers को public-key cryptography से authenticate करता है, इसलिए पहला काम सर्वर के लिए एक key pair बनाना है। इसे wg genkey | tee server_private.key | wg pubkey > server_public.key से generate करें। Private key सर्वर पर रहती है और कभी share नहीं की जाती; public key हर client को दी जाएगी।
इसके बाद, /etc/wireguard/wg0.conf पर tunnel configuration बनाएं। Server section में tunnel का private address range, वह port जिस पर WireGuard listen करता है (डिफ़ॉल्ट 51820), और सर्वर की private key परिभाषित होती है। बाद में जोड़ा गया हर डिवाइस एक [Peer] block के रूप में जुड़ता है जिसमें उस client की public key और tunnel के अंदर उसका address होता है। फ़ाइल को केवल root के लिए readable रखें — इसमें सर्वर की private key है।
Configuration जानबूझकर संक्षिप्त है। एक काम करने वाला server config बीस लाइनों से भी कम का है, यही कारण है कि WireGuard में खतरनाक गलती करना मुश्किल है।
Step 3 — Forwarding सक्षम करें और port खोलें
VPN के लिए आपके ट्रैफ़िक को internet पर route करने हेतु सर्वर को packets forward करने होंगे। /etc/sysctl.conf में net.ipv4.ip_forward=1 सेट करके और sysctl -p से लागू करके IP forwarding सक्षम करें। Tunnel config में एक firewall rule भी चाहिए जो outgoing traffic को masquerade करे ताकि वह सर्वर के अपने address से निकले — यह आमतौर पर wg0.conf में एक PostUp line के रूप में जोड़ा जाता है ताकि tunnel शुरू होने पर यह स्वचालित रूप से लागू हो।
फिर सुनिश्चित करें कि WireGuard port पहुँचने योग्य है। अगर VPS पर firewall चलती है, तो अपने चुने हुए port (डिफ़ॉल्ट 51820) पर UDP की अनुमति दें। WireGuard केवल UDP उपयोग करता है और — गोपनीयता के लिए उपयोगी — बिना मांगे भेजे packets का जवाब बिल्कुल नहीं देता, इसलिए port scan से भी यह पता नहीं चलता कि service वहाँ है।
Tunnel को wg-quick up wg0 से शुरू करें, और boot पर सक्षम करें systemctl enable [redacted-user]@[redacted-host] से। सर्वर साइड अब live है।
Step 4 — Client जोड़ें और कनेक्ट करें
VPN इस्तेमाल करने वाले हर डिवाइस — laptop, phone — को अपना key pair और एक छोटी client configuration चाहिए। Client के लिए key pair बिल्कुल सर्वर की तरह generate करें, फिर एक client config लिखें जिसमें client की private key, उसका tunnel address, सर्वर की public key, सर्वर का public IP और port Endpoint के रूप में, और AllowedIPs में [redacted-ip]/0 हो ताकि सारा ट्रैफ़िक tunnel से गुज़रे।
सर्वर के wg0.conf में उससे मिलान करने वाला [Peer] block — client की public key के साथ — जोड़ें और reload करें। Client पर WireGuard app इंस्टॉल करें (यह हर desktop और mobile platform पर उपलब्ध है), config import करें — अधिकांश apps QR code स्वीकार करते हैं, phones के लिए सबसे आसान तरीका — और tunnel चालू करें। एक सेकंड के भीतर आपके डिवाइस का ट्रैफ़िक आपके VPS से निकलने लगेगा। इसे अपना public IP address जांचकर confirm करें: वह अब सर्वर का होना चाहिए।
Step 5 — सुरक्षित करें और रखरखाव करें
काम करता हुआ tunnel अधिकांश काम कर देता है; कुछ अंतिम कदम इसे पक्का बनाते हैं:
- SSH को सुरक्षित करें। Key-based login इस्तेमाल करें, password authentication बंद करें, और SSH को port 22 से हटाने पर विचार करें। VPN केवल उतना ही private है जितना वह सर्वर जिस पर यह चलता है।
- System को अपडेट रखें। WireGuard को खुद बहुत कम ध्यान चाहिए, लेकिन underlying OS को security updates मिलने चाहिए — unattended upgrades सक्षम करें।
- प्रत्येक डिवाइस के लिए एक key pair। कभी भी एक client config को कई डिवाइसों में share न करें। अगर कोई डिवाइस खो जाए, तो आप केवल उसका peer block हटाते हैं, सब कुछ re-key नहीं करते।
- Client config में DNS सेट करें। Client को एक privacy-respecting resolver पर point करें ताकि DNS queries भी tunnel से गुज़रें न कि local network पर leak हों।
- Logging के defaults पर भरोसा करें। WireGuard अपने द्वारा carry किए गए ट्रैफ़िक के बारे में कुछ भी store नहीं करता; जो गुज़रता है उसके बारे में simply कुछ logged नहीं होता, इसलिए कुछ अतिरिक्त बंद करने की ज़रूरत नहीं।
इस तरह रखरखाव करने पर, सर्वर को लगभग कोई नियमित ध्यान नहीं चाहिए — WireGuard लगभग set-and-forget है।
Self-hosted VPN कब सही विकल्प है
Self-hosted WireGuard VPN सही विकल्प है जब आप एक ऐसा private exit point चाहते हैं जो केवल आपको ही जवाब दे — अविश्वसनीय नेटवर्क पर अपना कनेक्शन सुरक्षित करने के लिए, ISP से अपनी browsing छुपाने के लिए, या किसी चुने हुए jurisdiction से दिखने के लिए। क्योंकि यह आपका सर्वर है, हज़ारों अजनबियों के साथ share किया गया कोई IP address नहीं है और किसी provider की logging policy पर आँख मूंदकर भरोसा नहीं करना है।
एक बात स्पष्ट करना ज़रूरी है — यह एक काम नहीं करता: एक single-server VPN आपको अपने ISP और जिन sites पर आप जाते हैं उनसे गोपनीयता देता है, लेकिन VPS provider सिद्धांत रूप में exit पर ट्रैफ़िक देख सकता है। यही कारण है कि host का चुनाव मायने रखता है — no-KYC, no-logs, offshore VPS का मतलब है कि exit point खुद ऐसे provider के पास है जिसने कोई पहचान एकत्र नहीं की और कोई records नहीं रखे। Self-hosted WireGuard plus सही VPS अधिकांश लोगों के लिए सबसे ईमानदार privacy setup है: आपके नियंत्रण वाले infrastructure से परे किसी भरोसे की ज़रूरत नहीं।