این روزها بیشتر توجهها به WireGuard است، و بیدلیل هم نیست. اما OpenVPN هنوز جای خودش را دارد: میتواند روی TCP پورت ۴۴۳ کار کند، در روترها و کلاینتهای سازمانی تعبیه شده، و بعضی شبکهها وقتی VPNهای مبتنی بر UDP را میبندند آن را رد میکنند. اگر وضعیت شما این است، این کوتاهترین راه مطمئن به یک سرور کارآمد است.
چه چیزهایی لازم دارید
- یک VPS با IP عمومی مخصوص خودش. کلاینتها از اینترنت وصل میشوند، پس پلن NAT کار نمیکند — Nano-IP با ماهی ۸ دلار برای استفادهی شخصی کاملاً کافی است.
- Ubuntu 22.04/24.04 یا Debian 12، و root یا یک کاربر sudo.
- حدود ده دقیقه.
۱. اسکریپت نصب را اجرا کنید
راهاندازی دستی مرجع صدور گواهی، کلیدها و مسیریابی یک بعدازظهر کامل وقت میبرد. اسکریپت پرکاربرد openvpn-install از angristan همه را یکجا انجام میدهد. دانلودش کنید و پیش از اجرا بخوانیدش — اسکریپت shell است که پیکربندی شبکهی شما را تغییر میدهد و باید بدانید چه میکند:
curl -O https://raw.githubusercontent.com/angristan/openvpn-install/master/openvpn-install.sh
chmod +x openvpn-install.sh
less openvpn-install.sh
sudo ./openvpn-install.sh
اسکریپت چند سؤال میپرسد. پاسخهای معقول:
- آدرس IP: IPv4 عمومی سرور (خودش تشخیص میدهد).
- IPv6: بله، اگر IPv6 را از داخل تونل میخواهید.
- پورت:
1194بهطور پیشفرض، یا443اگر قصد دارید از TCP استفاده کنید. - پروتکل: UDP سریعتر است؛ TCP از فایروالهای سختگیر عبور میکند.
- DNS: هر ریزالور عمومی که به آن اعتماد دارید.
- فشردهسازی: نه. در کنار رمزگذاری مشکلات امنیتی شناختهشده دارد.
در پایان، اولین فایل کلاینت را میسازد، مثلاً /root/phone.ovpn.
۲. پورت را باز کنید
اسکریپت قواعد iptables خودش را تنظیم میکند. اگر UFW هم دارید، پورت VPN را صراحتاً مجاز کنید:
sudo ufw allow 1194/udp
sudo ufw status
اگر TCP را انتخاب کردهاید، به جایش 443/tcp بگذارید.
۳. فایل کلاینت را به دستگاه برسانید
فایل .ovpn را از طریق SSH کپی کنید:
scp -P 22 root@203.0.113.10:/root/phone.ovpn .
آن را در اپ OpenVPN Connect، در NetworkManager لینوکس یا در روترتان وارد کنید. این فایل کلید خصوصی آن کلاینت را دارد، پس مثل رمز عبور با آن رفتار کنید: ایمیلش نکنید و در پوشهی اشتراکی رهایش نکنید.
۴. بررسی کنید که کار میکند
روی سرور:
systemctl list-units --type=service | grep -i openvpn
journalctl -u 'openvpn*' --since "10 min ago"
روی کلاینت، وصل شوید و IP عمومی خود را ببینید. باید آدرس سرور را نشان دهد.
افزودن و لغو دستگاهها
اسکریپت را دوباره اجرا کنید:
sudo ./openvpn-install.sh
پیشنهاد میدهد کلاینت تازهای اضافه کنید، یکی را لغو کنید یا OpenVPN را کاملاً حذف کنید. یک کلاینت برای هر دستگاه ارزش این زحمت کوچک را دارد — وقتی لپتاپی دزدیده شود، فقط همان فایل را لغو میکنید و هیچ چیز دیگری تغییر نمیکند.
بدهبستانها، صادقانه
OpenVPN قدیمیتر و سنگینتر از WireGuard است. روی یک هسته رمزگذاری میکند، پس روی پلنی با ۱ vCPU به سرعت کامل یک اتصال خانگی سریع نمیرسید. دستدادنها کندترند و مصرف باتری روی گوشی بیشتر است. اگر هیچکدام از قابلیتهای خاص OpenVPN برایتان مهم نیست، به جایش راهنمای WireGuard را دنبال کنید — برای بیشتر افراد همان را انتخاب میکنیم.
جایی که OpenVPN برنده است سازگاری است: TCP 443 برای یک فایروال ساده شبیه ترافیک معمولی HTTPS است و بسیاری از دستگاهها از همان ابتدا OpenVPN را پشتیبانی میکنند.
اطلاعات بیشتر دربارهی VPN شخصی در صفحهی کاربرد VPN است، و اینکه IPv4/IPv6 در پلنهای ما چطور کار میکند در مستندات شبکه.
نظرات
هنوز نظری نیست. اولین نفر باشید.