شغّل VPN خاصًا بك باستخدام WireGuard
WireGuard بروتوكول VPN مدمج في نواة Linux يتيح لك إعداد خادم VPN خاص بك ببضعة أوامر. يُخرج VPN الخاص بك حركتك عبر عنوان IP تتحكم فيه. لكنه لا يجعلك مجهول الهوية: فالمواقع التي تزورها ترى عنوان IP خادمك.
يتناول هذا المقال فيمَ يفيد VPN الخاص بك وما الذي لا يحلّه، وخطوات الإعداد اليدوي، والطريق الأسهل بواجهة ويب.
فيمَ يفيد VPN الخاص بك؟
- شبكات Wi-Fi العامة: في شبكة مقهى أو فندق، تنتقل حركتك مشفّرة حتى خادمك.
- IP تركي من الخارج: لأن الخادم في إسطنبول، يمكنك الخروج بعنوان IP تركي وأنت في الخارج.
- الوصول إلى الشبكة الخاصة: تصل إلى الأجهزة التي تربطها بـ VPN نفسه، وإلى الخدمات على الخادم، كأنكم جميعًا على الشبكة المحلية نفسها.
- عنوان خروج ثابت: حتى لو تغيّر IP منزلك، يبقى خروج VPN لديك كما هو.
ما الذي لا يحلّه؟
- لا يجعلك مجهول الهوية. ترى المواقع عنوان IP خادمك، وهذا العنوان مرتبط بحسابك.
- بعض الخدمات تحجب عناوين IP الخاصة بمراكز البيانات. لا تفترض أن كل خدمة ستُفتح عبر VPN الخاص بك.
- لا يوفّر مخارج في بلدان كثيرة. خادمك في مكان واحد، وهو إسطنبول في Seturack.
- لم يُصمَّم لمنح الآخرين الوصول إلى الإنترنت. وإذا وفّرت للآخرين الوصول إلى الإنترنت عبر خادمك، فالتزامات القانون رقم 5651 عليك بحسب اتفاقية الخدمة. استخدم VPN لأجهزتك أنت أساسًا، واقرأ اتفاقية الخدمة قبل أن تمنح أي شخص آخر الوصول.
لماذا يحب الناس WireGuard
- دخل نواة Linux مع الإصدار 5.6، فلا تحتاج في التوزيعات الحالية إلى تثبيت برنامج تشغيل منفصل.
- لا توجد كلمات مرور. يُعرَّف كل طرف بزوج مفاتيح خاص وعام خاص به.
- الإعداد قصير ويتسع في ملف واحد.
- يستخدم UDP. والمنفذ الأكثر ظهورًا في الأمثلة والأدوات هو 51820.
الإعداد اليدوي (Ubuntu، بصفة root)
- ثبّت الحزمة:
apt install wireguard - أنشئ زوج مفاتيح الخادم:
umask 077 && wg genkey | tee privatekey | wg pubkey > publickey - دع كل جهاز عميل ينشئ مفتاحه بنفسه. يفعل ذلك تطبيق WireGuard على الهواتف والحواسيب، ولا تحتاج إلا إلى مفتاحه العام.
- اكتب الملف
/etc/wireguard/wg0.confوفق الجدول أدناه. - فعّل إعادة توجيه IP:
echo 'net.ipv4.ip_forward=1' | tee /etc/sysctl.d/70-wireguard.confثمsysctl --system - افتح المنفذ في جدار الحماية:
ufw allow 51820/udp - شغّله:
systemctl enable --now wg-quick@wg0
| القسم | السطر | وظيفته |
|---|---|---|
| [Interface] | Address = 10.8.0.1/24 | عنوان الخادم داخل شبكة VPN |
| [Interface] | ListenPort = 51820 | منفذ UDP الذي يستمع إليه |
| [Interface] | PrivateKey = محتوى الملف privatekey | المفتاح الخاص بالخادم. لا تشاركه أبدًا |
| [Interface] | PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -A FORWARD -o wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE | يُخرج حركة العملاء إلى الإنترنت. استبدل eth0 باسم واجهة خادمك، الذي يعرضه الأمر ip route show default |
| [Interface] | PostDown = القواعد الثلاث نفسها، مع -D بدل -A | يزيل القواعد عند إيقاف VPN |
| [Peer] | PublicKey = المفتاح العام للعميل | يعرّف هذا العميل |
| [Peer] | AllowedIPs = 10.8.0.2/32 | عنوان VPN الذي تمنحه للعميل |
اكتب أسطر [Interface] في الملف أولًا، ثم أسطر [Peer]. يحصل كل عميل على كتلة [Peer] خاصة به.
ربط عميل
على العميل، ضع مفتاحك الخاص والسطر Address = 10.8.0.2/24 وعنوان DNS في قسم [Interface]. وفي قسم [Peer] ضع المفتاح العام للخادم والسطر Endpoint = SERVER_IP:51820 والسطر AllowedIPs = 0.0.0.0/0. تمرر القيمة الأخيرة كل حركة IPv4 عبر النفق. وإذا أردت الوصول إلى شبكة VPN فقط فاكتب 10.8.0.0/24 بدلًا منها. وللأجهزة خلف NAT أو جدار حماية، تقترح الوثائق الرسمية PersistentKeepalive = 25.
نفّذ wg show على الخادم. إذا اتصل العميل، ترى سطر "latest handshake".
كل الحركة أم بعضها فقط؟
تحدد قيمة AllowedIPs على العميل أي حركة تدخل النفق. تمرر 0.0.0.0/0 كل حركة IPv4 عبره، لكن ليس IPv6. وإذا كان جهازك يدعم IPv6، فقد تتجاوز تلك الحركة النفق. أما مع 0.0.0.0/0, ::/0 فتدخل حركة IPv6 النفق أيضًا وتُسقَط هناك، لأن الخادم لا ينقل IPv6، فلا يمكن أن تتسرّب. وإذا أردت الوصول إلى شبكات معينة فقط، مثل 10.8.0.0/24، فاكتبها وحدها. ويسمى ذلك النفق المجزّأ (split tunneling)، وتخرج بقية الحركة بمسارها المعتاد. وللوصول إلى شبكة عن بُعد يكفي النفق المجزّأ غالبًا. فبقية حركتك لا تمر عبر النفق، فلا تتباطأ.
الطريق الأسهل: wg-easy
wg-easy أداة تجمع خادم WireGuard وإدارة العملاء في واجهة ويب. تضيف العملاء وتزيلهم وتعرض رمز QR للهواتف. ويُثبَّت بـ Docker Compose ويستخدم 51820/UDP. ويُوصى بوكيل عكسي إذا أردت فتح شاشة الإدارة على الإنترنت بأمان.
يستخدم خادم WireGuard الجاهز من Seturack أداة wg-easy ويعمل في نحو 4 دقائق. في اللوحة ترى عنوان الإدارة وكلمة المرور. ينقل النفق IPv4 فقط. أنشئ عميلًا منفصلًا لكل جهاز، وإذا فقدت جهازًا فاحذف عميله وحده. وخطوات الاتصال في مقال مساعدة WireGuard.
إعداد أجهزتك
لدى WireGuard تطبيقات رسمية لأنظمة Windows وmacOS وAndroid وiOS. وعلى Linux تكفي الحزمة. على الهاتف تضيف الإعداد برمز QR، وعلى الحاسوب باستيراد ملف الإعداد. وتشغّل النفق وتوقفه من التطبيق. وما دام النفق قائمًا، تخرج حركة إنترنتك عبر خادمك.
أربع قواعد أمان صغيرة
- دع root وحده يقرأ ملف الإعداد:
chmod 600 /etc/wireguard/wg0.conf - لا ترسل مفتاحك الخاص إلى أي أحد. المفتاح العام هو الوحيد الذي تشاركه.
- احذف كتلة
[Peer]الخاصة بجهاز فقدته أو لم تعد تريد السماح له. - أبقِ الخادم محدّثًا. تحديثات نظام التشغيل والتطبيقات عليك بعد الإعداد.
لأن حركة VPN لديك تمر عبر الخادم، فحجم الترافيك مهم أيضًا. الترافيك غير المحدود مشمول في سعر Seturack.
إذا لم يتصل
بعض الشبكات تحجب حركة UDP. جرّب شبكة أخرى، مثل بيانات الجوال في هاتفك. وتحقق أيضًا من أن المنفذ 51820/UDP مفتوح في جدار الحماية.
إذا أردت البدء بالتثبيت الجاهز، فراجع صفحة WireGuard VPN.
التعليقات0
لا توجد تعليقات بعد
كن أول من يشارك رأيه.
يرجى تسجيل الدخول أو إنشاء حساب لترك تعليق.