لماذا تشغّل شبكتك الخاصة الافتراضية بنفسك
تطلب منك الشبكة الخاصة الافتراضية التجارية الوثوق بادعاء شركة واحدة بعدم الاحتفاظ بالسجلات عبر آلاف المستخدمين الذين يتشاركون حفنة من عناوين الخروج. استضافة WireGuard بنفسك على VPS خارجي تقلب نموذج الثقة هذا: أنت تحمل المفاتيح، وأنت تضع سياسة تسجيل السجلات، والبيانات الوصفية الوحيدة الموجودة هي تلك التي تختار الاحتفاظ بها. بالنسبة لبعض نماذج التهديد، هذه هي المقايضة الصحيحة — تتوقف عن الوثوق بالنصوص التسويقية وتبدأ بالوثوق بإعدادك الخاص مضافاً إليه الولاية القضائية التي يقع فيها الخادم.
WireGuard هو الخيار الحديث لهذه المهمة. إنه بضعة آلاف من أسطر شيفرة النواة المدقَّقة بمساحة هجوم ضئيلة مقارنة بـ OpenVPN أو IPsec، ويأتي بتشفير حديث ثابت — Curve25519، وChaCha20-Poly1305، وBLAKE2s — فلا توجد مجموعة تشفير لتُعدّها خطأً إلى شيء ضعيف. عمليات المصافحة سريعة، والتنقل بين Wi-Fi والشبكة الخلوية سلس، والنفق الخامل لا يكلّف شيئاً تقريباً. على VPS خارجي تحصل على خروج مخصّص في ولاية قضائية تختارها من بين 6 منطقة، متاح خلال نحو 15 min، مع تخفيف 1.5 Tbps للطبقتين L3/4 ومنفذ غير محدود القياس قياسي في كل خطة.
SP·02ما يُخفيه النفق المُستضاف ذاتياً — وما لا يُخفيه
كن صادقاً بشأن النموذج قبل أن تبنيه. النفق المُستضاف ذاتياً يشفّر كل شيء بين جهازك والـ VPS، مُخفياً إياه عن شبكتك المحلية ومزوّد خدمة الإنترنت لديك، ويستبدل عنوان IP المنزلي بعنوان IP الخاص بالـ VPS لكل ما توجّهه عبره. هذا مفيد بحق على شبكات Wi-Fi المعادية، أو للوصول إلى خدماتك الخاصة خلف عنوان ثابت، أو لإبقاء مزوّد خدمة الوصول بعيداً عن تصفّحك.
أما ما لا يفعله فهو جعلك مجهول الهوية. عنوان الخروج ملك لك وحدك — لا يوجد حشد من المستخدمين الآخرين لتختلط بهم، لذا فإن أي شخص يستطيع ربط طرفي الاتصال، أو يحصل على أمر مُلزِم ضد المضيف، يمكنه نسب ذلك العنوان إلى حسابك. على جانب المضيف، الموقف ثابت: إشعارات DMCA لا تُعالَج ولا يُرد عليها — فـ DMCA قانون أمريكي لا قوة له في ولاياتنا القضائية، ولا نتصرف إلا بناءً على أمر مُلزِم صادر عن محكمة لها ولاية على الخادم المحدد. هذا يحميك من روبوتات الإزالة الآلية؛ لكنه لا يجعل شبكة خاصة افتراضية لمستخدم واحد أداة لإخفاء الهوية. إن كان خصمك مراقباً سلبياً عالمياً، فالجأ إلى Tor بدلاً من ذلك. النفق المُستضاف ذاتياً أداة سرّية وتحكّم، لا عباءة إخفاء.
SP·03اختر الموقع والخطة أولاً
الشبكة الخاصة الافتراضية الشخصية مُقيَّدة بعرض النطاق الترددي لا بوحدة المعالجة المركزية، فأصغر خطة كافية تماماً — سيشبع VPS من فئة Drift بسعر $8.00/شهرياً منفذه قبل أن يبذل الـ vCPU أي جهد بوقت طويل. أنفِق ميزانية قرارك على أين بدلاً من ذلك. ضع الخادم قريباً منك حين يهمّ زمن الاستجابة للاستخدام التفاعلي، أو بعيداً عنك حين تهمّ المسافة القانونية أكثر من زمن الذهاب والإياب.
تُفوتر رومانيا وهولندا بالسعر الأساسي وتتمتعان بأفضل اتصال أوروبي؛ بينما تطبّق سويسرا وأيسلندا وماليزيا وبنما مُعدِّلاً إقليمياً يظهر مباشرة في أداة التهيئة. ماليزيا هي خيار آسيا والمحيط الهادئ؛ وبنما وأيسلندا تميلان بأقصى قدر نحو المسافة القضائية. إن كنت غير متأكد، فالدليل المرافق أي موقع خارجي ينبغي أن تختار؟ يستعرض المقايضات منطقة بمنطقة. أياً كان اختيارك، اشحن رصيدك ابتداءً من $30.00 بعملة مشفرة وانشر — لا فحص هوية ولا بطاقة محفوظة.
SP·04كيف تتلاءم القطع معاً
يصوغ WireGuard الشبكة الخاصة الافتراضية كمجموعة من الأقران، يُعرَّف كل منهم بمفتاح عام، يتحدثون عبر واجهة افتراضية (هنا wg0). يحصل الخادم على شبكة فرعية خاصة — لنقُل 10.66.0.0/24 إضافة إلى عنوان IPv6 من نوع ULA — ويأخذ كل عميل عنواناً واحداً داخلها. كتلة [Interface] الخاصة بالخادم تحمل مفتاحه الخاص ومنفذ الاستماع؛ وكل عميل هو كتلة [Peer] تحمل المفتاح العام لذلك العميل والعناوين المسموح له باستخدامها.
على جانب العميل، AllowedIPs = 0.0.0.0/0, ::/0 هو ما يجعل هذه شبكة خاصة افتراضية كاملة النفق: فهو يأمر العميل بتوجيه كل حركة المرور عبر wg0. ثم يقوم الخادم بترجمة عناوين تلك الحركة عبر واجهته الشبكية الحقيقية بقاعدة تخفٍّ (masquerade)، ولهذا يجب تفعيل توجيه IP في النواة. PersistentKeepalive = 25 يُبقي المسار مفتوحاً عبر جدران الحماية ذات الحالة وترجمة عناوين المزوّد. اضبط DNS على العميل إلى محلِّل تثق به كي تسري عمليات البحث داخل النفق بدلاً من تسرّبها إلى شبكتك المحلية. WireGuard نفسه عديم الاتصال — فلا توجد جلسة طويلة الأمد لتنقطع، لذا يصمد الرابط أمام حاسوب محمول نائم أو هاتف ينتقل من Wi-Fi إلى الشبكة الخلوية دون أي رقصة إعادة اتصال. إن كان لمسارٍ ما وحدة إرسال قصوى (MTU) محرجة وتعطّلت الحِزَم الكبيرة، فإن خفض MTU لواجهة العميل إلى نحو 1380 يحلّها عادة. استوعب تلك الأفكار الأربع — الواجهة، والأقران، وAllowedIPs، والتخفّي — فتقرأ الإعدادات أدناه كأنها نثر.
حصّن الخادم بينما أنت هناك
نقطة نهاية VPN جديرة بالتأمين الكامل. انقل SSH إلى المصادقة بالمفتاح فقط وعطّل تسجيل الدخول بكلمة المرور وعبر root في /etc/ssh/sshd_config (PasswordAuthentication no، PermitRootLogin prohibit-password)، ثم أعد تحميل sshd. أبقِ جدار الحماية على الرفض الافتراضي: المنفذان الواردان الوحيدان اللذان يحتاجهما خادم WireGuard هما SSH وUDP 51820. كل ما عداهما يبقى مغلقًا.
أبقِ ملفات مفاتيح WireGuard على 0600 — فالأمر umask 077 في الخطوات أدناه يتكفّل بذلك — ولا تنسخ مفتاحًا خاصًا أبدًا خارج الخادم الذي يعود إليه. فعّل تحديثات الأمان غير المراقَبة كي تبقى النواة وحزمة wireguard مرقّعة دون حاجة إلى رقابة دائمة. اختبِر تسريبات DNS بمجرد تشغيل النفق — استعلام يُحَلّ عبر محلّلك المختار لا عبر مزوّد الإنترنت لديك يؤكّد أن الاستعلامات تبقى فعلاً داخل wg0. إن كشفت خدمات أخرى لاحقًا، أضف fail2ban وقواعد لكل خدمة بدلاً من توسيع جدار الحماية. لا شيء من هذا يعتمد على المضيف: فالـ VPS ملكك، وroot ملكك، والتزام التشغيل 99.9% يُبقي الخادم متاحًا كي يظل نفقك قائمًا.
أضِف المزيد من الأجهزة وأبقِه يعمل
كل جهاز يتصل يحتاج إلى زوج مفاتيح خاص به وكتلة [Peer] خاصة به على الخادم، لكلٍّ عنوان فريد داخل الشبكة الفرعية — فإعادة استخدام زوج مفاتيح واحد بين حاسوب محمول وهاتف يكسر التجوال ويُربك أي استكشاف للأخطاء. ولّد زوجًا جديدًا client2.key/client2.pub، وألحِق نظيرًا، ثم إما أعد تحميل الواجهة بـ wg syncconf wg0 <(wg-quick strip wg0) أو أعد تشغيلها بـ systemctl restart wg-quick@wg0.
للهواتف، تجاوز نسخ الملف تمامًا: اعرض إعداد العميل كرمز QR على الخادم بـ qrencode -t ansiutf8 < client.conf وامسحه مباشرةً داخل تطبيق WireGuard الرسمي. ولمعرفة من المتصل ومتى صافح كل نظير آخر مرة، شغّل wg show — فهو قصة المراقبة كاملةً لنشرٍ شخصي. اللقطات قبل ترقية النواة تمنحك تراجعًا نظيفًا إن أساء إصدار جديد التصرف يومًا.
متى يكون VPN تجاري أو Tor الأداة الأفضل
الاستضافة الذاتية ليست دائمًا الجواب، والتظاهر بغير ذلك سيكون غير أمين. إن كان هدفك أن تذوب وسط الحشد، فإن VPN متعدد المستخدمين موثوقًا يمنحك عناوين IP خروج مشتركة يستخدمها كثيرون في آنٍ معًا — وهو ما لا يستطيع نفق أحادي المستأجر تقديمه. وإن احتجت إلى التنقّل بين بلدان الخروج عند الطلب، فإن خدمة تجارية بتطبيق تبديل بنقرة واحدة أكثر ملاءمةً ببساطة من إنشاء خوادم. وإن احتجت إلى إخفاء هوية حقيقي ضد خصم وافر الموارد، فإن توجيه Tor البصلي مصمَّم تحديدًا لمشكلة الترابط نفسها التي لا يستطيع VPN مستضاف ذاتيًا حلها.
حيث تفوز الاستضافة الذاتية هو التحكم والسرية: فأنت لا تثق بسياسة تسجيل أحد آخر، وتحصل على عنوان IP مخصّص ثابت للإدارة وقوائم السماح، وأنت من يقرّر الولاية القضائية. كثيرون يشغّلون الاثنين معًا — نفق مستضاف ذاتيًا للسرية اليومية وTor للمهمة النادرة التي تتطلب إخفاء الهوية. اختر الأداة التي تطابق التهديد، لا تلك ذات صفحة الهبوط الأجمل.
SP·08خطوة بخطوة
-
01
انشر الـ VPS وثبّت WireGuard
انشر VPS بنظام Debian 13 أو Ubuntu 24.04، وسجّل الدخول كـ root عبر SSH، ثم حدّث وثبّت الحزمتين اللتين تحتاجهما.
apt update && apt full-upgrade -y apt install -y wireguard qrencode
-
02
فعّل إعادة توجيه IP
يعيد VPN ذو النفق الكامل توجيه حركة العميل عبر واجهة الخادم، لذا يجب أن تسمح النواة بإعادة التوجيه لكلٍّ من IPv4 وIPv6.
cat > /etc/sysctl.d/99-wg.conf <<'EOF' net.ipv4.ip_forward=1 net.ipv6.conf.all.forwarding=1 EOF sysctl --system
-
03
ولّد مفاتيح الخادم
اعمل في
/etc/wireguardبـ umask صارم كي يستقرّ كل ملف مفتاح على0600.cd /etc/wireguard umask 077 wg genkey | tee server.key | wg pubkey > server.pub
-
04
ولّد زوج مفاتيح للعميل
يحصل كل جهاز على زوج مفاتيح خاص به. اصنع الأول الآن.
wg genkey | tee client.key | wg pubkey > client.pub
-
05
اكتب إعداد الخادم
اعثر على واجهة شبكتك الحقيقية بـ
ip route get 1.1.1.1واستبدلeth0أدناه إن اختلفت (غالبًا ما تكونenp1s0). استدعاءات$(cat ...)تُدرج المفاتيح التي صنعتها للتو.cat > /etc/wireguard/wg0.conf <<EOF [Interface] Address = 10.66.0.1/24, fd86:ea04:1115::1/64 ListenPort = 51820 PrivateKey = $(cat server.key) PostUp = iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE PostDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE; ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE [Peer] PublicKey = $(cat client.pub) AllowedIPs = 10.66.0.2/32, fd86:ea04:1115::2/128 EOF
-
06
اكتب إعداد العميل
أنشئ
client.confفي المجلد نفسه. الصق محتوياتclient.keyوserver.pubحيث هو مبيّن، واضبطEndpointعلى عنوان IP العام لخادمك.AllowedIPs = 0.0.0.0/0, ::/0يوجّه كل شيء عبر النفق.[Interface] PrivateKey = <paste client.key> Address = 10.66.0.2/32, fd86:ea04:1115::2/128 DNS = 9.9.9.9 [Peer] PublicKey = <paste server.pub> Endpoint = YOUR_SERVER_IP:51820 AllowedIPs = 0.0.0.0/0, ::/0 PersistentKeepalive = 25
-
07
افتح جدار الحماية
اسمح بـ SSH ومنفذ UDP الخاص بـ WireGuard، ثم فعّل
ufw. أبقِ وضعية الرفض الافتراضي لكل ما عداهما.ufw allow OpenSSH ufw allow 51820/udp ufw enable
-
08
شغّل النفق
فعّل الواجهة كي تصمد عبر عمليات إعادة التشغيل، ثم تحقّق من النظراء والمصافحات.
systemctl enable --now wg-quick@wg0 wg show
-
09
اربط هاتفًا برمز QR
اعرض إعداد العميل كرمز قابل للمسح واستورده إلى تطبيق WireGuard للجوال — دون حاجة إلى نقل ملف.
qrencode -t ansiutf8 < client.conf

