ربط ثلاثة فروع بسيرفر مركزي باستخدام WireGuard VPN – دليل فني كامل
يُعتبر WireGuard من أشهر حلول الشبكات الافتراضية الخاصة (VPN) الحديثة، بفضل بساطته، أمانه، وأدائه العالي. في هذا الدليل نشرح بالتفصيل الفني طريقة ربط ثلاثة فروع أو مواقع (مثل أجهزة Raspberry Pi) لا تمتلك IP عام، بسيرفر مركزي VPS يملك IP عام، عبر WireGuard VPN.
هذا الحل يمكن اعتماده للربط الحكومي بين الدوائر الرسمية، وربط فروع الشركات الخاصة، ولتمكين أنظمة البصمة المركزية العراقية من تجميع بيانات الفروع بأمان وسهولة.
✅ مساهمة شركة المرام
ساهمت شركة المرام في تصميم وتطوير هذا الحل لزبون حكومي، حيث وفرت بنية شبكة آمنة تعتمد على WireGuard VPN، لربط المواقع الثلاثة (Baghdad, Najaf, Erbil) بسيرفر مركزي، مع إمكانية التوسع لأي عدد من الفروع مستقبلاً.
✅ الفكرة العامة
- السيرفر المركزي VPS يملك IP عام (مثلاً: X.X.X.X).
- الفروع الثلاثة تعمل من خلف NAT (IP داخلي).
- الفروع تنشئ نفق VPN إلى السيرفر المركزي عبر الإنترنت.
- جميع الأجهزة تكون ضمن شبكة خاصة موحدة بعنوان داخلي (مثل 10.0.0.0/24).
✅ تخطيط العناوين في شبكة WireGuard
| الجهاز | عنوانه في VPN |
|---|---|
| VPS (Server) | 10.0.0.1/24 |
| Baghdad | 10.0.0.2/24 |
| Najaf | 10.0.0.3/24 |
| Erbil | 10.0.0.4/24 |
✅ المتطلبات الأساسية
- نظام Linux (Debian/Ubuntu) في VPS.
- نظام Linux (Debian/Ubuntu) في كل فرع (أو Raspberry Pi).
- صلاحية root على كل جهاز.
- فتح منفذ 51820/UDP في جدار الحماية الخارجي.
✅ الخطوات على السيرفر المركزي (VPS)
- تثبيت WireGuard:
apt update && apt install wireguard -y - توليد المفاتيح:
wg genkey | tee server_private.key | wg pubkey > server_public.key - إعداد التكوين:
[Interface] Address = 10.0.0.1/24 ListenPort = 51820 PrivateKey = <Server_Private_Key> SaveConfig = true # Peers [Peer] PublicKey = <Baghdad_Public_Key> AllowedIPs = 10.0.0.2/32 [Peer] PublicKey = <Najaf_Public_Key> AllowedIPs = 10.0.0.3/32 [Peer] PublicKey = <Erbil_Public_Key> AllowedIPs = 10.0.0.4/32 - تفعيل IP Forwarding:
echo "net.ipv4.ip_forward=1" >> /etc/sysctl.conf sysctl -p - إعداد NAT:
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE apt install iptables-persistent -y netfilter-persistent save - تشغيل WireGuard:
wg-quick up wg0 systemctl enable wg-quick@wg0
✅ الخطوات على كل فرع (Baghdad, Najaf, Erbil)
- تثبيت WireGuard:
apt update && apt install wireguard -y - توليد المفاتيح:
wg genkey | tee client_private.key | wg pubkey > client_public.key - إعداد التكوين:
[Interface] Address = 10.0.0.X/24 PrivateKey = <Branch_Private_Key> DNS = 1.1.1.1 [Peer] PublicKey = <Server_Public_Key> Endpoint = X.X.X.X:51820 AllowedIPs = 0.0.0.0/0 PersistentKeepalive = 25✅ Baghdad: 10.0.0.2/24
✅ Najaf: 10.0.0.3/24
✅ Erbil: 10.0.0.4/24 - تشغيل WireGuard:
wg-quick up wg0 systemctl enable wg-quick@wg0
✅ النتيجة النهائية
كل فرع يمتلك اتصال VPN مشفر إلى السيرفر المركزي، ويمكنه التواصل مع أي فرع آخر عبر عناوين الشبكة الخاصة:
ping 10.0.0.3 # من Baghdad إلى Najaf
ping 10.0.0.4 # من Baghdad إلى Erbil
✅ حالات الاستخدام
- ربط الدوائر الحكومية في بغداد والنجف وأربيل بشبكة واحدة آمنة.
- نظام البصمة العراقي: ربط أجهزة البصمة في الفروع مع قاعدة بيانات مركزية.
- الشركات الخاصة: ربط الفروع دون الحاجة إلى IP عام لكل موقع.
✅ مساهمة شركة المرام
قامت شركة المرام بتصميم هذا الحل وتطبيقه لزبون حكومي، بما يشمل:
- بناء البنية التحتية في السيرفر المركزي.
- توليد المفاتيح الآمنة وإدارتها.
- إعداد ملفات التكوين لكل موقع.
- ضمان الاتصال المشفر والآمن بين المواقع.
- إمكانية التوسع مستقبلاً لأي عدد من الفروع.
✅ الخاتمة
يُعد WireGuard حلاً عمليًا وأمنيًا للغاية لربط الفروع والمقرات حتى خلف NAT، بتشفير حديث وسهولة في الإدارة، وهو خيار مثالي للمؤسسات الحكومية والشركات الخاصة وأنظمة البصمة العراقية.
???? للاستفسار أو طلب تنفيذ هذه الحلول، يمكنكم التواصل مع شركة المرام لتقديم الحلول التقنية والاستشارية المخصصة لكم.