خادم VPN مجاني على Oracle Cloud Free Tier: دليل الإعداد خطوة بخطوة 2026
تعلم كيفية إعداد خادم VPN شخصي مجاناً على Oracle Cloud Free Tier من البداية خلال 1–2 ساعة فقط. دليل مفصل للمبتدئين يتناول التسجيل، إعداد الشبكة، تكوين الخادم، تثبيت WireGuard، إعداد العميل، الاختبار، وحل المشكلات. النتيجة — شبكة VPN سريعة وآمنة بدون رسوم اشتراك.
محتوى المقال
- مقدمة
- التحضير
- المفاهيم الأساسية
- الخطوة 1: التسجيل على oracle cloud free tier وإعداد الحساب
- الخطوة 2: إنشاء vcn، الشبكة الفرعية، الطرق، وقواعد الأمان
- الخطوة 3: إنشاء خادم ubuntu افتراضي مجاني دائم
- الخطوة 4: الأمان الأساسي وإعداد النظام
- الخطوة 5: تثبيت وتكوين wireguard
- الخطوة 6: إضافة عملاء، توليد الإعدادات، والاتصال
- التحقق من النتيجة
- مشاكل شائعة وحلولها
- ميزات إضافية
- الأسئلة الشائعة
- الخاتمة
مقدمة
في هذا الدليل التفصيلي خطوة بخطوة، ستنشئ خادم VPN مجاني خاص بك على Oracle Cloud Free Tier وتربط به هاتفك وجهاز الكمبيوتر. سنتناول كل شيء بدءاً من التسجيل على Oracle وصولاً إلى تثبيت WireGuard، إنشاء إعدادات العميل، اختبار الاتصال، وحل المشاكل الشائعة. في النهاية، ستحصل على VPN شخصي مع عنوان IP عام مخصص، مثالي لتصفح الإنترنت بأمان، وتأمين شبكات Wi-Fi العامة، وتجاوز القيود.
هذا الدليل موجه للمبتدئين لكنه يتضمن أيضاً أقسام متقدمة: إعداد IPv6، أمان إضافي للخادم، بروتوكولات بديلة (OpenVPN، IKEv2)، الأتمتة، والنسخ الاحتياطية. لا تحتاج خبرة في الإدارة — فقط اتبع التعليمات بدقة واكتب الأوامر كما هي.
ما يجب أن تعرفه مسبقاً: مهارات تصفح أساسية، نسخ الأوامر ولصقها في الطرفية، وفهم أسماء المستخدمين وكلمات المرور. لا حاجة لأي خبرة في لينكس — كل الأوامر موضحة بالكامل.
الوقت المطلوب: 60–120 دقيقة. معظم الوقت يذهب للتسجيل الأولي، انتظار التحقق، والإعداد الدقيق للشبكة.
التحضير
قبل البدء، تأكد من جاهزية كل شيء.
الأدوات المطلوبة والوصول
- بريد إلكتروني شخصي يمكنك الوصول إليه.
- هاتف محمول لاستقبال رموز التحقق.
- هوية أو بطاقة للتحقق من حساب Oracle (مطلوبة لتفعيل Free Tier؛ لا توجد رسوم إذا اخترت Always Free).
- جهاز كمبيوتر مع متصفح واتصال إنترنت مستقر.
- عميل SSH: على ويندوز - OpenSSH المدمج عبر PowerShell أو أي طرفية؛ على macOS/Linux - الطرفية القياسية.
متطلبات النظام
- منطقة Oracle Cloud تدعم موارد Free Tier.
- للعملاء: هاتف iOS أو أندرويد و/أو كمبيوتر بنظام ويندوز/ماك/لينكس للاتصال بالـ VPN.
ما يجب تنزيله أو تثبيته
- تطبيق WireGuard لهاتفك وجهاز الكمبيوتر (ستقوم بتنزيله بعد إنشاء الإعدادات).
- اختياري: مولد رمز QR على الخادم (سنثبت حزمة qrencode بالأمر).
النسخ الاحتياطية
لا تحتاج للنسخ الاحتياطي الآن. بعد الإعداد، ستحتفظ بمفاتيح وإعدادات العملاء. سنعرض لك طريقة سهلة لتخزينها بأمان.
المفاهيم الأساسية
مصطلحات رئيسية
- VPN — نفق آمن بين جهازك والخادم يقوم بتشفير البيانات ويخفي عنوان IP الحقيقي.
- WireGuard — بروتوكول VPN حديث وسريع يعمل عبر UDP. بسيط وآمن ويدعم الهواتف وأجهزة الكمبيوتر.
- Oracle Cloud Free Tier — خطة سحابية مجانية من Oracle تسمح بتشغيل أجهزة افتراضية صغيرة إلى أجل غير مسمى.
- VCN — الشبكة السحابية الافتراضية في Oracle؛ مثل شبكتك الخاصة التي تستضيف الخوادم.
- NSG/قوائم الأمان — قواعد جدار الحماية السحابي التي تتحكم في فتح البورتات من الخارج.
- عنوان IP عام — العنوان الخارجي للخادم الذي يستخدمه العملاء للاتصال بخادم VPN.
كيفية العمل
تنشئ جهازاً افتراضياً على Oracle، تعطيه عنوان IP عام، تثبت WireGuard، وتفتح بورت UDP 51820 في سياسات الشبكة. تحصل على إعدادات العميل مع المفاتيح وتتصل بالخادم. كل البيانات تمر عبر نفق VPN مشفر ويخرج الإنترنت عبر عنوان IP الخاص بالخادم.
نقاط مهمة للفهم
- جدار الحماية يعمل على مستويين: على مستوى النظام في الخادم وعلى مستوى السحابة (NSG/قوائم الأمان). يجب السماح للبورتات المطلوبة على كلا المستويين.
- موارد Free Tier محدودة. اختر حزمة خفيفة الوزن (WireGuard) والخدمات الضرورية فقط.
- الأمان: استخدم مفاتيح SSH بدلاً من كلمات المرور، حافظ على تحديث النظام، ولا تفتح بورتات غير ضرورية.
الخطوة 1: التسجيل على Oracle Cloud Free Tier وإعداد الحساب
الهدف
إنشاء حساب Oracle Cloud، تفعيل وصول Free Tier، وتسجيل الدخول إلى لوحة التحكم.
التعليمات
- اذهب إلى موقع Oracle Cloud وابدأ التسجيل للـ Free Tier. قدم بلدك، بريدك الإلكتروني، وكلمة المرور.
- قم بتأكيد بريدك الإلكتروني عبر الرمز المرسل.
- املأ ملفك الشخصي: الاسم، العنوان، رقم الهاتف. اختر المنطقة الافتراضية. نصيحة: يمكنك تغيير المنطقة لاحقاً عند إنشاء الموارد؛ اختر منطقة يتوفر بها Free Tier عادةً.
- اربط بطاقة بنكية للتحقق من حسابك. هذا فحص قياسي — لا تُفرض رسوم إذا اخترت Always Free.
- انتظر التحقق وسجل الدخول إلى لوحة Oracle Cloud.
- تأكد من اختيار المنطقة الصحيحة في الزاوية العليا (مثل فرانكفورت، أمستردام، لندن). إذا لم تتوفر السعة، جرب منطقة أخرى.
- أنشئ قسم مخصص (حاوية منطقية) للـ VPN: افتح القائمة، اذهب إلى الهوية والأمان > الأقسام، اضغط إنشاء قسم. سمّه vpn واحفظ.
- راجع حصص Free Tier: اذهب إلى الحوكمة والإدارة > الحدود، الحصص والاستخدام. ابحث عن الحوسبة وتأكد من توفر أشكال Always Free (Ampere A1 أو E2 Micro).
⚠️ ملاحظة: إذا واجهت نقص سعة عند إنشاء الأجهزة، غيّر المنطقة. هذا شائع في المناطق الشعبية. لا تستسلم من المحاولة الأولى.
النتيجة المتوقعة
أنت مسجل دخولك في لوحة Oracle Cloud، أنشأت قسم vpn، اخترت المنطقة المناسبة، وموارد Free Tier متاحة.
مشاكل شائعة وحلولها
- لم يصل تأكيد البريد — تحقق من البريد العشوائي وأعد إرسال الرمز.
- فشل التحقق من البطاقة — جرب بطاقة مختلفة أو انتظر بضع ساعات.
- عدم توفر Free Tier — أكمل التحقق من الملف الشخصي بالكامل وأعد المحاولة من اللوحة.
✅ تحقق: القائمة العلوية تظهر حسابك النشط، والمنطقة المختارة، وقسم vpn في القائمة.
الخطوة 2: إنشاء VCN، الشبكة الفرعية، الطرق، وقواعد الأمان
الهدف
إعداد شبكة افتراضية ليتمكن الخادم من الوصول للإنترنت والعملاء من الوصول إليه.
التعليمات
- افتح قائمة الشبكات، اختر الشبكات السحابية الافتراضية، واضغط على إنشاء VCN.
- اختر إنشاء VCN مع اتصال بالإنترنت (هذا ينشئ تلقائياً بوابة إنترنت وجدول طرق).
- سمّه vcn-vpn، اختر قسم vpn، اترك CIDR على 10.0.0.0/16، وأنشئه.
- داخل الـ VCN، أنشئ شبكة فرعية عامة: اذهب إلى الشبكات الفرعية، أنشئ شبكة فرعية، سمها subnet-public، النوع عام، CIDR 10.0.0.0/24. اختر إما منطقة توافر أو إقليمية (الإقليمية مفضلة).
- تأكد من وجود بوابة إنترنت مرفقة بالـ VCN وأن جدول الطرق يحتوي على 0.0.0.0/0 يشير إلى هذه البوابة.
- أنشئ مجموعة أمان شبكة (NSG) للـ VPN: اذهب إلى مجموعات أمان الشبكة، أنشئ واحدة باسم nsg-vpn.
- أضف قواعد NSG: السماح بــ UDP 51820 وارد من أي مكان (لـ WireGuard)، السماح بــ TCP 22 وارد من IPك أو 0.0.0.0/0 للـ SSH (من الأفضل تقييده إلى IPك فقط)، السماح بــ UDP 500 و4500 وارد (لـ IKEv2 مستقبلي)، السماح بــ UDP 1194 وارد (لـ OpenVPN مستقبلي)، والسماح لجميع الإخراج 0.0.0.0/0.
- إذا تستخدم قوائم الأمان بدلاً من NSG، أضف نفس القواعد إلى قائمة أمان الشبكة الفرعية.
- احفظ التغييرات وتأكد من أن الشبكة الفرعية العامة تستخدم الطرق الصحيحة وNSG.
نصيحة: استخدم NSGs بدل قوائم الأمان حينما يكون ذلك ممكناً: أسهل لتخصيص قواعد مختلفة للأجهزة دون تغيير إعدادات الشبكة الفرعية بأكملها.
⚠️ تحذير: لا تفتح بورتات غير ضرورية. لـ WireGuard الأساسي، فقط UDP 51820 و SSH 22 مطلوبان. يمكنك إضافة مزيد لاحقاً إذا دعت الحاجة.
النتيجة المتوقعة
سيلزمك VCN مع شبكة فرعية عامة، بوابة إنترنت، جدول طرق، وNSG يسمح لـ UDP 51820 و SSH 22.
مشاكل شائعة وحلولها
- عدم وجود إنترنت من الشبكة الفرعية — تأكد من أن جدول الطرق 0.0.0.0/0 يشير إلى بوابة الإنترنت.
- البورت غير مفتوح — تحقق من وجود القاعدة ضمن NSG وأن NSG سيتم ربطه بالجهاز في الخطوة 3.
✅ تحقق: تفاصيل VCN تظهر بوابة الإنترنت، جدول الطرق مع 0.0.0.0/0، وNSG مع القواعد المناسبة.
الخطوة 3: إنشاء خادم Ubuntu افتراضي مجاني دائم
الهدف
تشغيل جهاز افتراضي مجاني على Oracle Cloud مع عنوان IP عام ووصول SSH.
التعليمات
- افتح الحوسبة > الأجهزة، اضغط إنشاء جهاز.
- سمّه vpn-wg، اختر قسم vpn.
- اختر صورة Ubuntu 22.04 LTS (لـ Ampere A1، تأكد من إصدار ARM64). Ubuntu 24.04 LTS جيد إذا متوفر ومألوف.
- الشكل: اضغط تغيير الشكل. اختر الأشكال المؤهلة لـ Always Free: VM.Standard.A1.Flex (Ampere A1) أو VM.Standard.E2.1.Micro. للأول، خصص 1 OCPU و1–2 جيجابايت رام؛ E2.micro تلقائي. علم على Always Free مؤهلة.
- الشبكة: اختر VCN vcn-vpn والشبكة الفرعية subnet-public. اختر تخصيص عنوان IPv4 عام. نصيحة: قم بحجز IP العام كعنوان عام محجوز بعد الإنشاء ليبقى ثابت بعد إعادة التشغيل.
- اختر مجموعات أمان الشبكة: اختر nsg-vpn.
- مفاتيح SSH: أنشئ زوج مفاتيح على جهازك إن لزم - على Windows PowerShell استخدم ssh-keygen، وكذلك على macOS/Linux. ارفع مفتاحك العام في اللوحة أو ألصق محتويات ~/.ssh/id_rsa.pub أو ~/.ssh/id_ed25519.pub.
- حجم الإقلاع: اترك الافتراضي 50 جيجابايت أو قلله إلى 20 (لا يؤثر على Free Tier لكنه يوفر مساحة).
- أنشئ الجهاز وانتظر حتى يصبح حالته تشغيل Running.
- انسخ عنوان IPv4 العام المعروض في صفحته، مثلاً 129.146.XX.XX.
- اتصل عبر SSH: على Windows PowerShell نفذ ssh ubuntu@PUBLIC_IP؛ مماثل على macOS/Linux. إذا تستخدم مفتاح خاص، حدد مساره: ssh -i ~/.ssh/id_ed25519 ubuntu@PUBLIC_IP.
نصيحة: إذا فشل الاتصال عبر SSH، ارفع مؤقتاً السماح لبورت 22 من أي عنوان في NSG، اتصل، ثم قيد NSG على IPك فقط.
النتيجة المتوقعة
جهازك الافتراضي أُنشئ ويعمل، يملك عنوان IPv4 عام، وقد سجلت دخولك كمستخدم ubuntu عبر SSH.
مشاكل شائعة وحلولها
- رفض الوصول (publickey) — تأكد من تحميل المفتاح العام الصحيح واستخدام المفتاح الخاص المطابق.
- انتهى وقت الاتصال — تحقق من تشغيل الجهاز، وجود عنوان عام، السماح لبورت 22 في NSG/قائمة الأمان، وأن المزود لا يمنع TCP 22 الصادر.
- عدم وجود شكل Always Free — غيّر المنطقة وحاول مجدداً.
✅ تحقق: تشغيل أمر uname -a يعرض معلومات نواة لينكس؛ ip a يعرض الواجهات والعناوين.
الخطوة 4: الأمان الأساسي وإعداد النظام
الهدف
تحديث النظام، إنشاء مستخدم جديد، تقوية SSH، إعداد جدار حماية بسيط، وتفعيل توجيه الحزم.
التعليمات
- حدث النظام: sudo apt update && sudo apt -y upgrade. انتظر حتى انتهاء.
- أنشئ مستخدم إداري منفصل (اختياري لكن موصى به): sudo adduser admin، عين كلمة مرور، ثم sudo usermod -aG sudo admin.
- انسخ مفاتيح SSH للمستخدم الجديد: أثناء تسجيلك كمستخدم ubuntu، نفذ sudo rsync -a ~/.ssh /home/admin/ && sudo chown -R admin:admin /home/admin/.ssh.
- اختياري: تعطيل تسجيل الدخول بكلمة مرور والسماح بالمفاتيح فقط. حرر ملف إعداد SSH: sudo nano /etc/ssh/sshd_config، واضبط PasswordAuthentication no، وPermitRootLogin no. احفظ وأعد تحميل SSH: sudo systemctl reload ssh.
- ثبت جدار الحماية UFW: sudo apt -y install ufw. سماح للـ SSH: sudo ufw allow 22/tcp.
- لا تقم بتفعيل UFW بعد. سنضيف قواعد WireGuard ونفعّله لاحقاً لتجنب فقدان الاتصال.
- فعّل توجيه IP لعملية NAT: حرر sudo nano /etc/sysctl.conf، أزل التعليق عن أو أضف net.ipv4.ip_forward=1 وخيارياً net.ipv6.conf.all.forwarding=1. نفّذ sudo sysctl -p.
- تحقق من معمارية CPU: uname -m يجب أن تعود بـ aarch64 (Ampere A1) أو x86_64 (E2.micro).
نصيحة: دائماً قم بعمل نسخة احتياطية قبل التعديل: sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak.
النتيجة المتوقعة
النظام محدث، تم إنشاء المستخدم الإداري (اختياري)، SSH محصّن، وتوجيه IP مفعل.
مشاكل شائعة وحلولها
- فقدان اتصال SSH بعد التعديلات — استخدم وحدة التحكم التسلسلية في Oracle لاستعادة نسخة النسخ: sudo mv /etc/ssh/sshd_config.bak /etc/ssh/sshd_config && sudo systemctl restart ssh.
- التوجيه غير مفعّل — تحقق من sysctl net.ipv4.ip_forward لإرجاع 1.
✅ تحقق: sysctl net.ipv4.ip_forward تظهر net.ipv4.ip_forward = 1، وجلسة SSH ما تزال مفتوحة.
الخطوة 5: تثبيت وتكوين WireGuard
الهدف
نشر خادم WireGuard، فتح البورتات المطلوبة، إعداد NAT، وتجهيز إعدادات العملاء.
التعليمات
- ثبت WireGuard وأداة QR: sudo apt -y install wireguard qrencode.
- أنشئ مفاتيح الخادم: sudo umask 077; wg genkey | sudo tee /etc/wireguard/server.key | wg pubkey | sudo tee /etc/wireguard/server.pub. عرض المفتاح العام: sudo cat /etc/wireguard/server.pub. خزنه بأمان لأغراض التصحيح.
- اختر شبكة VPN: يستحسن IPv4 10.6.0.0/24 وIPv6 fd42:42:42::/64 (اختياري). عناوين النفق للخادم هي 10.6.0.1 و fd42:42:42::1.
- أنشئ ملف الإعداد للخادم: sudo nano /etc/wireguard/wg0.conf. ألصق:
[Interface]
Address = 10.6.0.1/24
ListenPort = 51820
PrivateKey = (ألصق محتويات /etc/wireguard/server.key)
PostUp = iptables -t nat -A POSTROUTING -s 10.6.0.0/24 -o eth0 -j MASQUERADE; iptables -A FORWARD -i wg0 -j ACCEPT; iptables -A FORWARD -o wg0 -j ACCEPT
PostDown = iptables -t nat -D POSTROUTING -s 10.6.0.0/24 -o eth0 -j MASQUERADE; iptables -D FORWARD -i wg0 -j ACCEPT; iptables -D FORWARD -o wg0 -j ACCEPT
إذا لم يكن واجهتك eth0، ابحث عنها باستخدام ip route get 1.1.1.1 واستبدلها (مثلاً ens3). - افتح البورت في UFW: sudo ufw allow 51820/udp. ثم فعّل جدار الحماية: sudo ufw --force enable. تحقق من الحالة: sudo ufw status verbose. ينبغي رؤية قواعد لـ 22/tcp و51820/udp.
- فعّل التوجيه في UFW: حرر sudo nano /etc/ufw/sysctl.conf، تأكد من net/ipv4/ip_forward=1. أدخل قواعد NAT في /etc/ufw/before.rules قبل COMMIT في جدول *nat:
*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.6.0.0/24 -o eth0 -j MASQUERADE
COMMIT
استبدل eth0 بواجهتك. أعد تحميل UFW: sudo ufw reload. - شغّل WireGuard: sudo systemctl enable --now wg-quick@wg0. تحقق الحالة: sudo systemctl status wg-quick@wg0 يجب أن تظهر نشطة.
- اعرض حالة الواجهة: sudo wg show. يجب أن تجد الواجهة wg0 مع المنفذ 51820 مستمع.
نصيحة: من الأفضل حالياً استخدام iptables كما هو موضح؛ إذا استخدمت nftables عدّل أوامر PostUp/PostDown وتحقق من توافق UFW.
⚠️ تحذير: لا تشارك مفتاح الخادم الخاص (/etc/wireguard/server.key) مع أحد لأنه يمنح وصولاً كاملاً إلى VPN.
النتيجة المتوقعة
WireGuard قيد التشغيل؛ بورت UDP 51820 مفتوح في UFW وNSG؛ NAT مفعّل؛ وواجهة wg0 نشطة.
مشاكل شائعة وحلولها
- الخدمة لا تبدأ — تحقق من أذونات server.key (يجب أن تكون 600)، صحة wg0.conf، واسم الواجهة الصحيح في قواعد NAT.
- البورت مغلق — تحقق sudo ss -lunp | grep 51820 وإعدادات NSG وUFW.
- لا إنترنت عبر النفق — تحقق من قواعد MASQUERADE، تفعيل التوجيه، وجداول الطرق.
✅ تحقق: sudo wg show يظهر الواجهة wg0 مع ListenPort 51820؛ وأمر curl ifconfig.me على الخادم يعرض IP الخارجي.
الخطوة 6: إضافة عملاء، توليد الإعدادات، والاتصال
الهدف
إنشاء إعدادات العملاء لهاتفك وجهاز الكمبيوتر، إضافتهم للخادم، والاتصال بشبكة VPN.
التعليمات
- حدد عنوان IP العام أو اسم المضيف الخاص بالخادم. استخدم IPv4 الموجود في صفحة الجهاز. إذا حجزت الـ IP، فهو ثابت. إن لم يكن، احجز عنواناً في العناوين وصله بالجهاز.
- أنشئ مفاتيح العميل 1 (مثلاً للهاتف): wg genkey | tee client1.key | wg pubkey | tee client1.pub. خزّنها بأمان.
- خصص عنوان VPN: 10.6.0.2/32 للعميل 1، والعميل التالي 10.6.0.3/32، وهكذا.
- حرر ملف إعداد الخادم sudo nano /etc/wireguard/wg0.conf وأضف في النهاية:
[Peer]
PublicKey = (محتويات client1.pub)
AllowedIPs = 10.6.0.2/32
احفظ وطبق التغييرات بـ sudo wg syncconf wg0 <(sudo wg-quick strip wg0) أو ببساطة أعد تشغيل WireGuard: sudo systemctl restart wg-quick@wg0. - أنشئ ملف إعداد العميل: nano client1.conf بمحتوى:
[Interface]
PrivateKey = (محتويات client1.key)
Address = 10.6.0.2/32
DNS = 1.1.1.1
[Peer]
PublicKey = (محتويات server.pub)
AllowedIPs = 0.0.0.0/0
Endpoint = PUBLIC_IP:51820
PersistentKeepalive = 25
احفظ الملف. نصيحة: إذا أردت الوصول فقط إلى شبكة عمل، ضع عنوانها في AllowedIPs (مثلاً 10.10.0.0/16) بدلاً من 0.0.0.0/0. - أنشئ رمز QR لهاتفك: qrencode -t ansiutf8 < client1.conf لعرضه في الطرفية، أو احفظه إلى PNG: qrencode -o client1.png < client1.conf.
- ثبت تطبيق WireGuard على هاتفك من المتجر، افتحه، اضغط لإضافة نفق، اختر مسح رمز QR، وامسح الرمز في الطرفية أو من client1.png. احفظ الملف الشخصي.
- على الكمبيوتر، ثبت عميل WireGuard، اختر استيراد من ملف، اختر client1.conf، وشغل النفق بواسطة الزر.
- أضف عميل 2 (مثلاً لابتوب) بنفس الطريقة: أنشئ مفاتيح client2، خصص 10.6.0.3/32، أضف [Peer] إلى wg0.conf، أنشئ client2.conf، واستورده.
نصيحة: رموز QR أسهل لهواتف iOS وأندرويد؛ ملفات الإعداد هي الأفضل لويندوز/ماك/لينكس.
النتيجة المتوقعة
يتصل العملاء بخادم WireGuard بنجاح. عند التبديل في الهاتف/الكمبيوتر، يتصل VPN ويمرر مرور الإنترنت بأمان.
مشاكل شائعة وحلولها
- فشل المصافحة — تحقق من صحة المفاتيح، السماح لبورت UDP 51820 في NSG وUFW، صحة عنوان Endpoint، واتصال العميل بالإنترنت.
- متصل لكن لا إنترنت — تحقق من قواعد MASQUERADE، التوجيه، وتأكد من أن AllowedIPs = 0.0.0.0/0 للعميل للنفق الكامل.
- الاتصال ينقطع كثيراً — ضع PersistentKeepalive = 25 في العميل وتأكد من أن مزود الإنترنت لا يمنع UDP.
✅ تحقق: على الخادم، يظهر sudo wg show آخر مصافحة وبيانات نقل العميل. على العميل، افتح أي موقع — يجب أن يكون عنوان IP مطابقاً للخادم.
التحقق من النتيجة
قائمة التحقق
- الجهاز على Oracle في حالة تشغيل ولديه عنوان IP عام.
- VCN والشبكة الفرعية معدة مع جدول طرق 0.0.0.0/0 إلى بوابة الإنترنت.
- NSG/قوائم الأمان تسمح بـ UDP 51820 و SSH 22.
- WireGuard يعمل والواجهة wg0 نشطة.
- يتصل العملاء ويتدفق المرور عبر VPN.
كيفية الاختبار
- على الخادم: أمر sudo wg show يعرض معلومات المصافحة الأخيرة.
- على العميل: تحقق من عنوان IP الخاص بك عبر الإنترنت؛ يجب أن يظهر عنوان خادم Oracle.
- اختبر السرعة — WireGuard يقدم عادة أداء جيد حتى على Free Tier.
مؤشرات النجاح
- يتصل العميل خلال 1–2 ثانية دون أخطاء.
- عدادات المرور على الخادم ترتفع أثناء تصفح الإنترنت.
- اتصال مستقر لمدة 10–15 دقيقة دون انقطاع.
مشاكل شائعة وحلولها
- مشكلة: العميل لا يتصل. السبب: بورت 51820 محجوب في NSG أو UFW. الحل: تحقق من قواعد NSG و sudo ufw status، وافتح البورت بـ sudo ufw allow 51820/udp.
- مشكلة: متصل لكن لا إنترنت. السبب: نقص NAT أو تعطيل التوجيه. الحل: تحقق من sysctl net.ipv4.ip_forward وقواعد iptables MASQUERADE، وأعد تشغيل WireGuard.
- مشكلة: الخادم لا يستمع على البورت. السبب: خطأ في صياغة wg0.conf. الحل: تفقّد الملف، أزل الفراغات الزائدة والأحرف غير الصالحة، وأعد الإنشاء.
- مشكلة: فقدان اتصال SSH بعد تفعيل UFW. السبب: لم يسمح للبورت 22 قبل التفعيل. الحل: في وحدة تحكم الجهاز نفّذ sudo ufw allow 22/tcp && sudo ufw reload.
- مشكلة: الانقطاع المتكرر عبر شبكة الموبايل. السبب: NAT مزود الخدمة يمنع UDP بقوة. الحل: ضع PersistentKeepalive=25، جرب بورت 53/udp أو 443/udp، وقم بتحديث قواعد NSG وUFW.
- مشكلة: تغير عنوان IP العام عشوائياً. السبب: العنوان غير محجوز. الحل: أنشئ عنوان IP عام محجوز واربطه بالجهاز.
- مشكلة: حجب الوصول في بعض الدول. السبب: قيود جغرافية على الوجهة. الحل: غيّر موقع الجهاز ليكون أقرب لجمهورك.
- مشكلة: سرعة منخفضة. السبب: بعد المنطقة، ازدحام القناة، أو ضعف الشبكة اللاسلكية. الحل: استخدم منطقة قريبة، جرب اتصال سلكي أو Wi-Fi بسرعة 5GHz، وأغلق التنزيلات الخلفية.
- مشكلة: خطأ الصلاحيات في المفاتيح. السبب: أذونات خاطئة للملفات. الحل: نفّذ sudo chmod 600 /etc/wireguard/server.key، وتأكد أن المالك هو root.
- مشكلة: العميل لا يرى الشبكة المحلية. السبب: نقص طرق. الحل: أضف الشبكة المحلية في AllowedIPs للعميل وربطها برتب الخادم.
ميزات إضافية
إعدادات الأمان المتقدمة
- ثبت Fail2ban لحماية SSH: sudo apt -y install fail2ban، وخصص إعدادات الجيل لـ sshd.
- قيد وصول SSH حسب IP في NSG — احتفظ فقط بـ IP بيتك أو مكتبك.
- غيّر بورت SSH: حدد بورت مخصص في /etc/ssh/sshd_config وحدّث قواعد NSG وUFW.
IPv6
إذا كانت منطقتك في Oracle تدعم IPv6، أضفه في قسم [Interface] للخادم: Address = fd42:42:42::1/64 وخصص /128 للعملاء. أضف ::/0 في AllowedIPs لنفق IPv6 كامل. تحقق من sysctl net.ipv6.conf.all.forwarding=1. أضف NAT66 إذا لزم الأمر، غالباً التوجيه كافٍ.
بروتوكولات بديلة
- OpenVPN: متوافق أكثر مع الأجهزة القديمة لكنه أثقل. ثبت openvpn، أنشئ ملف الخادم، وافتح UDP 1194. لا تنسَ NAT والتوجيه.
- IKEv2 (strongSwan): مدعوم أصلياً على iOS/macOS/Windows، ذو جودة عالية لكن إعداد الشهادات معقد. افتح UDP 500 و4500، وأعد تكوين strongSwan وملفات العملاء.
الإخفاء وتجاوز DPI
إذا كانت شبكتك تستخدم DPI صارم، حوّل WireGuard إلى بورت 443/udp أو استعمل أدوات إخفاء UDP. بعض العملاء يسمحون بتغيير البورت واستخدام أنفاق خارجية.
DNS مخصص وحظر إعلانات
أنشئ DNS خفيف أو Pi-hole على نفس الجهاز. استخدم عنوانه كـ DNS في إعدادات العملاء. انتبه لاستهلاك الذاكرة.
النسخ الاحتياطي والمفاتيح
- صدّر مجلد /etc/wireguard وخزن بأمان: sudo tar czf wg-backup.tgz /etc/wireguard.
- احتفظ بمفاتيح الخادم والعميل الخاصة في مدير كلمات مرور آمن.
الأتمتة والبنية التحتية ككود
- cloud-init: أرفق user-data عند إنشاء الأجهزة لنشر WireGuard تلقائياً.
- Terraform: وصف VCN، الشبكة الفرعية، NSG، الجهاز، وIP ككود لتسريع الاستعادة والنقل بين المناطق.
المراقبة
- ثبت prometheus-node-exporter أو netdata الخفيف لرسم الحمل (انتبه لقيود Free Tier).
- راجع حال الخدمات بانتظام عبر systemctl status والسجلات journalctl -u wg-quick@wg0.
نصيحة: اضبط تذكيراً شهرياً بالتحديثات: sudo apt update && sudo apt -y upgrade.
نصيحة: إذا تشغل عدة أجهزة في مناطق مختلفة، استخدم قواعد NSG وقوالب wg0.conf متناسقة لتسهيل الإدارة.
بديل DIY للإعداد السريع
إذا تريد VPN خاص فورياً بدون إعدادات لوحة تحكم أو التصحيح، فكّر في vpn.how. خدمة خوادم VPN خاصة مع عناوين IP مخصصة — ليست مشاركة — مع دعم WireGuard، OpenVPN، IKEv2، L2TP، SSTP. مواقع الخوادم تشمل موسكو، سانت بطرسبرغ، أمستردام، فرانكفورت، لندن، نيويورك، سان خوسيه، شيكاغو، سنغافورة، سيدني، مدريد، هلسنكي، ستوكهولم، وارسو، كوبنهاغن، ستافنغر. تقبل الدفع ببطاقات روسية (Tinkoff، Ozon)، SBP، USDT/BTC. الخطط تبدأ من ₽490 يومياً أو ₽2490 شهرياً مع خصومات للمدد الطويلة. بعد الدفع، الخادم جاهز خلال حوالي 5 دقائق بدون تسجيل. الحلول الذاتية تمنحك تحكماً كاملاً لكنها تتطلب ساعات إعداد، مراقبة ونسخ احتياطي. الحلول الجاهزة توفّر الوقت والجهد لإطلاق سريع.
الأسئلة الشائعة
- أي منطقة Oracle تقدم أفضل سرعة؟ — الأقرب جغرافياً إليك. اختبر زمن الاستجابة والنطاق الترددي. فرانكفورت وأمستردام مناسبان لأوروبا؛ نيويورك وسان خوسيه للولايات المتحدة.
- هل يمكن تغيير بورت WireGuard؟ — نعم. حدّث ListenPort في wg0.conf، عدّل قواعد NSG وUFW، وغيّر عنوان Endpoint في إعدادات العملاء.
- هل يمكن توصيل عدة عملاء بنفس الوقت؟ — نعم. أنشئ مفاتيح منفصلة لكل عميل، خصص عناوين /32 مميزة، وأضف مدخلات [Peer] جديدة على الخادم.
- هل يمكن تكوين توجيه جزئي للمرور عبر VPN؟ — بالتأكيد. حدد بادئات IP في AllowedIPs (مثل الشبكات المؤسسية)، ويذهب باقي المرور مباشر.
- ماذا أفعل إذا فقدت عنوان IP العام؟ — تحقق من حالة الجهاز. قم بحجز عنوان IP عام واربطه بالجهاز لتجنّب التغيير بعد إعادة التشغيل.
- كيف أعد DNS-over-HTTPS داخل النفق؟ — شغّل محلل يدعم DNS عبر DoH/DoT باستخدام عنوانه في DNS بإعدادات العميل.
- هل يستحق استخدام IPv6؟ — نعم، إذا دعمه العملاء ومزودو الإنترنت. يحسن جودة الاتصال لكنه يحتاج لإعداد التوجيه وجدار الحماية.
- كيف أحذف عميل؟ — امسح قسم [Peer] الخاص به من wg0.conf وأعد تشغيل الخدمة. احذف ملف الإعداد الخاص به.
- كم عدد العملاء التي يستطيع Free Tier دعمها؟ — يعتمد على الحمل. عادة 5–20 عميل متصلين بحركة معتدلة يعملون جيداً.
- كيف أزيل WireGuard بالكامل؟ — عطل وأوقف الخدمة: sudo systemctl disable --now wg-quick@wg0، احذف /etc/wireguard، أزل قواعد UFW، وأعد التشغيل.
الخاتمة
لقد أكملت العملية كاملة — من التسجيل على Oracle Cloud Free Tier إلى إطلاق شبكة VPN سريعة وآمنة باستخدام WireGuard. أنشأت شبكة افتراضية، ضبّطت قواعد الجدار الناري، أطلقت الجهاز المجاني، ثبتت WireGuard، أنشأت إعدادات العملاء، وربطت أجهزتك بنجاح. الآن لديك VPN شخصي مع تحكم كامل من إعدادات الشبكة السحابية حتى ملفات تعريف العملاء. يمكنك لاحقاً تعزيز الميزات بـ IPv6، البروتوكولات البديلة، DNS مخصص، المراقبة، والنسخ الاحتياطية. للتوسع، فكّر في الأتمتة باستخدام cloud-init أو Terraform لإطلاق نسخ في مناطق أخرى وضمان التوافر. إذا أردت وصول VPN سريع بدون تعقيدات التحكم، خدمات مُدارة مثل vpn.how توفر عليك الوقت، بينما تمنحك الحلول الذاتية تحكماً واستقلالية كاملة. أتمنى لك تصفحاً آمناً وسريعاً!