WireGuard یک VPN سبک، سریع و مدرن است که از هر دو پروتکل IPv4 و IPv6 پشتیبانی میکند. VPN به شما اجازه میدهد از طریق شبکههای ناامن مثل وایفای عمومی، طوری به اینترنت و سرورهای خود متصل شوید که انگار داخل یک شبکه خصوصی هستید. این یعنی ارتباطات شما رمزنگاری شده و امن باقی میماند.
برخلاف VPNهای قدیمیتر مثل OpenVPN یا IPsec که به گواهینامه و تنظیمات پیچیده وابستهاند، WireGuard بر پایه کلیدهای عمومی و خصوصی کار میکند و مجموعه ثابتی از الگوریتمهای رمزنگاری مدرن را استفاده میکند. این طراحی ساده باعث کاهش خطاهای تنظیماتی و افزایش پایداری میشود.
چرا WireGuard انتخاب بهتری است؟
-
سرعت بسیار بالا و مصرف کم منابع
-
پیکربندی ساده و قابل درک
-
امنیت مدرن با رمزنگاری قوی
-
پشتیبانی کامل از IPv4 و IPv6
-
مناسب برای سرورها، لپتاپها و موبایلها
معماری WireGuard چگونه است؟
WireGuard یک پروتکل Peer-to-Peer است. یعنی همه دستگاهها نرمافزار یکسانی اجرا میکنند و تفاوت “سرور” و “کلاینت” فقط به ساختار شبکه مربوط میشود، نه نرمافزار.
اجزای اصلی:
Interface مجازی (wg0)
یک کارت شبکه مجازی است که تمام ترافیک رمزنگاریشده از آن عبور میکند.
Peer ها
هر دستگاه یک جفت کلید عمومی و خصوصی دارد و با استفاده از این کلیدها تونل امن برقرار میکند.
AllowedIPs
یکی از مهمترین بخشهای تنظیمات است که هم مسیر ترافیک را مشخص میکند و هم نقش لیست دسترسی (ACL) را دارد.
حالتهای استفاده از WireGuard
1. ارتباط داخلی (Peer to Peer)
فقط دستگاههای عضو VPN با هم ارتباط امن دارند. مناسب برای دسترسی به سرویسهای داخلی و مدیریت سرورها.
2. حالت Gateway (VPN کامل)
تمام ترافیک کاربر از طریق سرور WireGuard عبور میکند و سرور مانند یک دروازه اینترنت عمل میکند. در این حالت IP کاربر مخفی میشود.
IPv4، IPv6 و حالت Dual Stack
WireGuard از هر دو نسخه IP پشتیبانی میکند. در حالت Dual Stack هر دو فعال هستند، اما باید:
-
برای هر دو پروتکل Forwarding فعال شود
-
قوانین فایروال جداگانه تنظیم شود
-
مسیرها در AllowedIPs برای IPv4 و IPv6 تعریف شوند
اگر فقط مسیر 0.0.0.0/0 تنظیم شود ولی ::/0 اضافه نشود، ترافیک IPv6 خارج از VPN عبور میکند که به آن IPv6 Leak میگویند.
پیشنیازها
برای راهاندازی:
-
یک سرور Ubuntu با دسترسی sudo
-
فعال بودن فایروال
-
یک سیستم کلاینت (لینوکس، ویندوز، موبایل و…)
-
در صورت استفاده از IPv6، پشتیبانی شبکه از IPv6
نصب WireGuard در Ubuntu
ساخت کلیدهای رمزنگاری
کلید خصوصی روی سرور باقی میماند و کلید عمومی بین Peerها تبادل میشود.
نمونه تنظیمات سرور (wg0.conf)
فعالسازی IP Forwarding
در فایل /etc/sysctl.conf:
سپس:
تنظیم NAT و فایروال
داخل فایل wg0.conf:
و باز کردن پورت:
اجرای سرویس
تنظیم کلاینت (Peer)
نمونه فایل کلاینت:
جمعبندی
WireGuard یک VPN مدرن، سریع و امن با طراحی ساده است که بدون پیچیدگیهای سنتی VPNها، ارتباطی رمزنگاریشده و پایدار ایجاد میکند. با پیکربندی درست IPv4، IPv6، فایروال و مسیریابی، میتوان از آن هم برای ارتباط داخلی سرورها و هم بهعنوان VPN کامل اینترنت استفاده کرد.

