- هندسة بسيطة وتشفير حديث: مفاتيح لكل نظير وعناوين IP المسموح بها للتوجيه.
- التثبيت السريع على Linux والتطبيقات الرسمية لسطح المكتب والهاتف المحمول.
- أداء متفوق على IPsec/OpenVPN، مع التجوال ووقت استجابة منخفض.

إذا كنت تبحث عن VPN وهو سريع وآمن وسهل النشر، WireGuard إنه أفضل ما يمكنك استخدامه اليوم. بتصميمه البسيط وتشفيره الحديث، يُعدّ مثاليًا للمستخدمين المنزليين والمحترفين والشركات، سواءً على أجهزة الكمبيوتر أو الأجهزة المحمولة وأجهزة التوجيه.
ستجد في هذا الدليل العملي كل شيء من الأساسيات إلى التكوين المتقدم: التثبيت على Linux (Ubuntu/Debian/CentOS)، المفاتيح، ملفات الخادم والعميل، إعادة توجيه IP، NAT/جدار الحماية، التطبيقات على Windows/macOS/Android/iOS، انقسام النفقوالأداء واستكشاف الأخطاء وإصلاحها والتوافق مع منصات مثل OPNsense أو pfSense أو QNAP أو Mikrotik أو Teltonika.
ما هو WireGuard ولماذا يجب اختياره؟
WireGuard هو بروتوكول VPN مفتوح المصدر وبرنامج مصمم لإنشاء أنفاق مشفرة L3 عبر UDP. إنه يبرز مقارنةً بـ OpenVPN أو IPsec نظرًا لبساطته وأدائه وانخفاض زمن الوصول، ويعتمد على خوارزميات حديثة مثل Curve25519، ChaCha20-Poly1305، BLAKE2، SipHash24 وHKDF.
قاعدة الكود الخاصة به صغيرة جدًا (حوالي آلاف الخطوط)، مما يُسهّل عمليات التدقيق، ويُقلّل من مساحة الهجوم، ويُحسّن الصيانة. كما أنه مُدمج في نواة لينكس، مما يسمح معدلات نقل عالية والاستجابة السريعة حتى على الأجهزة المتواضعة.
إنه متعدد المنصات: هناك تطبيقات رسمية له ويندوز، ماك، لينكس، أندرويد وiOSويدعم أنظمة التوجيه/جدران الحماية مثل OPNsense. كما أنه متاح لبيئات مثل FreeBSD وOpenBSD وNAS ومنصات المحاكاة الافتراضية.
كيف يعمل في الداخل
يقوم WireGuard بإنشاء نفق مشفر بين النظراء (الأقران) يتم تحديدها بواسطة المفاتيح. يُنشئ كل جهاز زوج مفاتيح (خاص/عام) ويشارك فقط مفتاح عام مع الطرف الآخر؛ من هناك، يتم تشفير كافة البيانات ومصادقتها.
التوجيه AllowIPs يُحدد كلاً من مسار البيانات الصادرة (أي حركة مرور يجب أن تمر عبر النفق) وقائمة المصادر الصالحة التي سيقبلها النظير البعيد بعد فك تشفير الحزمة بنجاح. يُعرف هذا النهج باسم توجيه Cryptokey ويبسط سياسة المرور إلى حد كبير.
يعد WireGuard ممتازًا مع تجوالإذا تغير عنوان IP لعميلك (مثلاً، عند الانتقال من شبكة Wi-Fi إلى 4G/5G)، تُعاد الجلسة بشفافية وسرعة فائقة. كما يدعم مفتاح القتل لحظر حركة المرور خارج النفق في حالة تعطل شبكة VPN.
التثبيت على لينكس: Ubuntu/Debian/CentOS
على أوبونتو، يتوفر WireGuard في المستودعات الرسمية. حدّث الحزم ثم ثبّت البرنامج للحصول على الوحدة والأدوات. wg وwg-quick.
apt update && apt upgrade -y
apt install wireguard -y
modprobe wireguard
في إصدار Debian المستقر، يمكنك الاعتماد على مستودعات الفروع غير المستقرة إذا كنت بحاجة إلى ذلك، باتباع الطريقة الموصى بها ومع الرعاية في الإنتاج:
sudo sh -c 'echo deb https://deb.debian.org/debian/ unstable main > /etc/apt/sources.list.d/unstable.list'
sudo sh -c 'printf "Package: *\nPin: release a=unstable\nPin-Priority: 90\n" > /etc/apt/preferences.d/limit-unstable'
sudo apt update
sudo apt install wireguard
في CentOS 8.3 يكون التدفق مشابهًا: يمكنك تنشيط مستودعات EPEL/ElRepo إذا لزم الأمر ثم تثبيت الحزمة WireGuard والوحدات النمطية المقابلة.
توليد المفتاح
يجب أن يكون لكل نظير خاص به زوج المفاتيح الخاص/العام. قم بتطبيق umask لتقييد الأذونات وإنشاء مفاتيح للخادم والعملاء.
umask 077
wg genkey | tee privatekey | wg pubkey > publickey
كرر ذلك على كل جهاز. لا تشارك أبدًا مفتاح سري واحفظهما بأمان. إذا أردت، أنشئ ملفات بأسماء مختلفة، على سبيل المثال خادم المفاتيح الخاص y مفتاح الخادم العام.
تكوين الخادم
إنشاء الملف الرئيسي في /etc/wireguard/wg0.conf. قم بتعيين شبكة فرعية VPN (غير مستخدمة على شبكة LAN الحقيقية لديك)، ومنفذ UDP وأضف كتلة [النظير] لكل عميل معتمد.
[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
PrivateKey = <clave_privada_servidor>
# Cliente 1
[Peer]
PublicKey = <clave_publica_cliente1>
AllowedIPs = 10.0.0.2/32
يمكنك أيضًا استخدام شبكة فرعية أخرى، على سبيل المثال 192.168.2.0/24، والنمو مع أقران متعددين. للنشر السريع، من الشائع استخدام wg-quick مع ملفات wgN.conf.
تكوين العميل
قم بإنشاء ملف على العميل، على سبيل المثال ملف wg0-client.conf، مع مفتاحه الخاص، وعنوان النفق، ونظام DNS الاختياري، ونظير الخادم مع نقطة النهاية العامة والمنفذ الخاص به.
[Interface]
PrivateKey = <clave_privada_cliente>
Address = 10.0.0.2/24
DNS = 8.8.8.8
[Peer]
PublicKey = <clave_publica_servidor>
Endpoint = <ip_publica_servidor>:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
إذا وضعت AllowIPs = 0.0.0.0/0 سوف تمر جميع حركة المرور عبر شبكة VPN؛ إذا كنت تريد فقط الوصول إلى شبكات خادم محددة، فاقتصر على الشبكات الفرعية الضرورية وسوف تقلل كمون والاستهلاك.
إعادة توجيه IP وNAT على الخادم
فعّل إعادة التوجيه ليتمكن العملاء من الوصول إلى الإنترنت عبر الخادم. طبّق التغييرات فورًا باستخدام sysctl.
echo 'net.ipv4.ip_forward=1' >> /etc/sysctl.conf
echo 'net.ipv6.conf.all.forwarding=1' >> /etc/sysctl.conf
sysctl -p
قم بتكوين NAT باستخدام iptables لشبكة VPN الفرعية، مع ضبط واجهة WAN (على سبيل المثال، eth0):
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE
اجعلها مستمرة مع الحزم المناسبة وقواعد الحفظ التي سيتم تطبيقها عند إعادة تشغيل النظام.
apt install -y iptables-persistent netfilter-persistent
netfilter-persistent save
بدء التشغيل والتحقق
افتح الواجهة وفعّل الخدمة لبدء التشغيل مع النظام. هذه الخطوة تُنشئ الواجهة الافتراضية وتُضيف rutas لزم الأمر.
systemctl start wg-quick@wg0
systemctl enable wg-quick@wg0
wg
مع wg ستشاهد الأقران والمفاتيح وعمليات النقل وأوقات آخر مصافحة. إذا كانت سياسة جدار الحماية لديك مقيدة، فاسمح بالدخول عبر الواجهة. wg0 ومنفذ UDP للخدمة:
iptables -I INPUT 1 -i wg0 -j ACCEPT
التطبيقات الرسمية: Windows وmacOS وAndroid وiOS
يمكنك استيراد ملف على سطح المكتب ملف .confعلى الأجهزة المحمولة، يسمح لك التطبيق بإنشاء الواجهة من رمز الاستجابة السريعة يحتوي على التكوين؛ وهو مناسب جدًا للعملاء غير الفنيين.
إذا كان هدفك هو عرض الخدمات المستضافة ذاتيًا مثل بليكس/رادار/سونار من خلال شبكة VPN الخاصة بك، ما عليك سوى تعيين عناوين IP في شبكة فرعية WireGuard وضبط AllowedIPs حتى يتمكن العميل من الوصول إلى هذه الشبكة؛ ولا تحتاج إلى فتح منافذ إضافية للخارج إذا كان كل الوصول من خلال نفق.
مزايا وعيوب
WireGuard سريع وبسيط للغاية، ولكن من المهم مراعاة حدوده وخصائصه حسب حالة الاستخدام. إليك نظرة عامة متوازنة على أهم الميزات: ذات الصلة.
| ميزة | عيوب |
|---|---|
| تكوين واضح ومختصر، مثالي للأتمتة | لا يتضمن تشويش حركة المرور الأصلية |
| أداء عالي وزمن وصول منخفض حتى في متنقل | في بعض البيئات القديمة، يوجد عدد أقل من الخيارات المتقدمة |
| التشفير الحديث والرمز الصغير الذي يجعل الأمر سهلاً التدقيق | الخصوصية: قد يكون ارتباط IP/المفتاح العام حساسًا اعتمادًا على السياسات |
| التجوال السلس ومفتاح القتل متاح للعملاء | التوافق مع الطرف الثالث ليس متجانسًا دائمًا |
النفق المنقسم: توجيه ما هو ضروري فقط
يتيح لك النفق المقسم إرسال حركة المرور التي تحتاجها فقط عبر شبكة VPN. مع AllowIPs تقرر ما إذا كنت تريد إجراء إعادة توجيه كاملة أو انتقائية إلى شبكة فرعية واحدة أو أكثر.
# Redirección completa de Internet
[Peer]
AllowedIPs = 0.0.0.0/0
# Solo acceder a recursos de la LAN 192.168.1.0/24 por la VPN
[Peer]
AllowedIPs = 192.168.1.0/24
هناك متغيرات مثل النفق المنقسم العكسي، الذي يتم تصفيته بواسطة URL أو عن طريق التطبيق (من خلال ملحقات/عملاء محددين)، على الرغم من أن الأساس الأصلي في WireGuard هو التحكم عن طريق IP والبادئات.
التوافق والنظام البيئي
وُلِد WireGuard لنواة Linux، لكنه اليوم المتعدديتكامل OPNsense بشكل أصلي؛ تم إيقاف pfSense مؤقتًا لإجراء عمليات التدقيق، وتم تقديمه لاحقًا كحزمة اختيارية اعتمادًا على الإصدار.
على NAS مثل QNAP، يمكنك تثبيته عبر QVPN أو الآلات الافتراضية، والاستفادة من بطاقات NIC 10GbE سرعات عاليةتتضمن لوحات توجيه MikroTik دعم WireGuard منذ RouterOS 7.x؛ في إصداراتها المبكرة، كانت في مرحلة تجريبية ولم يُنصح باستخدامها في الإنتاج، ولكنها تسمح بأنفاق P2P بين الأجهزة وحتى العملاء النهائيين.
لدى الشركات المصنعة مثل Teltonika حزمة لإضافة WireGuard إلى أجهزة التوجيه الخاصة بها؛ إذا كنت بحاجة إلى المعدات، فيمكنك شراؤها من shop.davantel.com واتبع إرشادات الشركة المصنعة للتثبيت الحزم اضافية.
الأداء والزمن الكامن
بفضل تصميمها البسيط واختيار الخوارزميات الفعالة، تحقق WireGuard سرعات عالية جدًا و زمن انتقال منخفض، متفوقة بشكل عام على L2TP/IPsec وOpenVPN. في الاختبارات المحلية باستخدام أجهزة قوية، غالبًا ما يكون المعدل الفعلي ضعف المعدلات البديلة، مما يجعله مثاليًا لـ البث المباشر أو الألعاب أو VoIP.
التنفيذ المؤسسي والعمل عن بعد
في المؤسسة، يعد WireGuard مناسبًا لإنشاء أنفاق بين المكاتب، ووصول الموظفين عن بعد، والاتصالات الآمنة بين التطوير المهني المستمر والسحابة (على سبيل المثال، للنسخ الاحتياطية). تركيبه النحوي المختصر يجعل إدارة الإصدارات والأتمتة أمرًا سهلاً.
يتكامل مع أدلة مثل LDAP/AD باستخدام حلول وسيطة، ويمكنه العمل مع منصات IDS/IPS أو NAC. ومن الخيارات الشائعة: PacketFence (مفتوح المصدر)، والذي يسمح لك بالتحقق من حالة المعدات قبل منح الوصول والتحكم BYOD.
Windows/macOS: ملاحظات ونصائح
يعمل تطبيق Windows الرسمي عادةً دون مشاكل، ولكن في بعض إصدارات Windows 10 كانت هناك مشكلات عند الاستخدام AllowIPs = 0.0.0.0/0 بسبب تعارضات المسارات. كبديل مؤقت، يختار بعض المستخدمين عملاءً يعتمدون على WireGuard مثل TunSafe أو تحديد عناوين IP المسموح بها لشبكات فرعية محددة.
دليل البدء السريع لـ Debian مع مفاتيح المثال
إنشاء مفاتيح للخادم والعميل في /إلخ/واير جارد/ وأنشئ واجهة wg0. تأكد من عدم تطابق عناوين IP لشبكة VPN مع أي عناوين IP أخرى على شبكتك المحلية أو عملائك.
cd /etc/wireguard/
wg genkey | tee claveprivadaservidor | wg pubkey > clavepublicaservidor
wg genkey | tee claveprivadacliente1 | wg pubkey > clavepublicacliente1
خادم wg0.conf مع الشبكة الفرعية 192.168.2.0/24 والمنفذ 51820. قم بتمكين PostUp/PostDown إذا كنت تريد أتمتة NAT مع iptables عند إظهار/إظهار الواجهة.
[Interface]
Address = 192.168.2.1/24
PrivateKey = <clave_privada_servidor>
ListenPort = 51820
#PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
#PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
[Peer]
PublicKey = <clave_publica_cliente1>
AllowedIPs = 0.0.0.0/0
العميل مع العنوان 192.168.2.2، يشير إلى نقطة النهاية العامة للخادم ومع حافظ على حياتك اختياري إذا كان هناك NAT وسيط.
[Interface]
PrivateKey = <clave_privada_cliente1>
Address = 192.168.2.2/32
[Peer]
PublicKey = <clave_publica_servidor>
AllowedIPs = 0.0.0.0/0
Endpoint = <ip_publica_servidor>:51820
#PersistentKeepalive = 25
اسحب الواجهة وشاهد وحدة MTU وعلامات الطريق و com.fwmark وقواعد سياسة التوجيه. راجع مخرجات wg-quick وحالتها باستخدام عرض wg.
Mikrotik: نفق بين RouterOS 7.x
يدعم MikroTik تقنية WireGuard منذ إصدار RouterOS 7.x. أنشئ واجهة WireGuard على كل جهاز توجيه، ثم طبّقها، وسيتم إنشاؤها تلقائيًا. مفتاح. تعيين عناوين IP إلى Ether2 كشبكة WAN وwireguard1 كواجهة نفق.
قم بتكوين النظراء عن طريق عبور المفتاح العام للخادم على جانب العميل والعكس، وحدد العناوين المسموح بها/عناوين IP المسموح بها (على سبيل المثال 0.0.0.0/0 إذا أردتَ السماح لأي مصدر/وجهة بالمرور عبر النفق، فاضبط نقطة النهاية البعيدة بمنفذها. سيؤكد إرسال أمر ping إلى عنوان IP الخاص بالنفق البعيد مصافحة.
إذا قمت بتوصيل الهواتف المحمولة أو أجهزة الكمبيوتر بنفق Mikrotik، فقم بضبط الشبكات المسموح بها حتى لا تفتح أكثر من اللازم؛ يقرر WireGuard تدفق الحزم بناءً على توجيه Cryptokeyلذلك من المهم مطابقة المنشأ والوجهة.
التشفير المستخدم
تستخدم WireGuard مجموعة حديثة من: ضوضاء كإطار عمل، Curve25519 لـ ECDH، وChaCha20 للتشفير المتماثل المعتمد مع Poly1305، وBLAKE2 للتجزئة، وSipHash24 لجداول التجزئة، وHKDF لاستنتاج مفتاحإذا تم إيقاف استخدام خوارزمية ما، فيمكن إصدار البروتوكول للانتقال بسلاسة.
إيجابيات وسلبيات الهاتف المحمول
يتيح لك استخدامه على الهواتف الذكية التصفح بأمان شبكة واي فاي عامةإخفاء حركة المرور عن مزود خدمة الإنترنت، والاتصال بشبكتك المنزلية للوصول إلى NAS، أو أتمتة المنزل، أو الألعاب. على أنظمة iOS/Android، لا يؤدي تبديل الشبكات إلى إغلاق النفق، مما يُحسّن تجربة الاستخدام.
كسلبيات، فإنك تتعرض لخسارة في السرعة ووقت انتظار أطول مقارنة بالإخراج المباشر، وتعتمد على الخادم دائمًا متاحومع ذلك، بالمقارنة مع IPsec/OpenVPN، تكون العقوبة أقل عادةً.
يجمع WireGuard بين البساطة والسرعة والأمان الحقيقي مع منحنى تعلم سلس: ثبّته، أنشئ مفاتيح، عرّف عناوين IP المسموح بها، وستكون جاهزًا للاستخدام. أضف إعادة توجيه IP، وترجمة عناوين الشبكة (NAT) المُطبّقة جيدًا، والتطبيقات الرسمية مع رموز الاستجابة السريعة (QR codes)، والتوافق مع أنظمة مثل OPNsense وMikrotik وTeltonika. شبكة VPN حديثة لجميع السيناريوهات تقريبًا، بدءًا من تأمين الشبكات العامة وحتى ربط المقر الرئيسي والوصول إلى خدمات منزلك دون أي مشاكل.
محرر متخصص في قضايا التكنولوجيا والإنترنت بخبرة تزيد عن عشر سنوات في الوسائط الرقمية المختلفة. لقد عملت كمحرر ومنشئ محتوى لشركات التجارة الإلكترونية والاتصالات والتسويق عبر الإنترنت وشركات الإعلان. لقد كتبت أيضًا في مواقع الاقتصاد والمالية والقطاعات الأخرى. عملي هو أيضا شغفي. الآن من خلال مقالاتي في Tecnobits، أحاول استكشاف كل الأخبار والفرص الجديدة التي يقدمها لنا عالم التكنولوجيا كل يوم لتحسين حياتنا.

