SSD Nodes Learn 8GB RAM — $66/سنة
الأدلة Matt Connorبقلم Matt Connor · آخر تحديث في 2026-08-01

WireGuard أم OpenVPN؟ أيهما تستضيفه ذاتيًا؟

اختر WireGuard لمعظم الخوادم ذاتية الاستضافة: إعداد العميل نحو 10 أسطر، والاتصال خلال أجزاء من الثانية. تعرّف على 4 حالات يتفوق فيها OpenVPN.

الإجابة المختصرة

مقارنة WireGuard بـ OpenVPN لشخص واحد يدير خادم VPN على VPS خاص به ليست متقاربة: اختر WireGuard. فهو أصغر حجمًا، ويعمل داخل نواة Linux، ويتصل خلال جزء من الثانية، ولا يتجاوز إعداد العميل العامل 10 أسطر تقريبًا. ينفّذ OpenVPN أربع مهام فعلية، وإذا لم تكن أيٌّ منها مطلوبة لديك، فلا تحتاج إليه.

تتمثل هذه المهام الأربع في الخروج من شبكة لا تسمح إلا بالمنفذ TCP 443، والارتباط بجهة إصدار شهادات موجودة، ومصادقة المستخدمين المسمّين باستخدام كلمة مرور أو عامل ثانٍ، وإنشاء جسر على Layer 2. يوضح كل ما يلي الأدلة التي تستند إليها هذه التوصية، والنقطة الدقيقة التي يبدأ عندها انطباق كل استثناء عليك.

لماذا فاز WireGuard لدى مشغّلي الخوادم ذاتيًا

قاعدة الشفرة صغيرة بما يكفي لقراءتها. يقدّر مشروع WireGuard تنفيذ البروتوكول بنحو 4,000 سطر من الشفرة. يصل OpenVPN إلى ستة أرقام عند احتساب مكتبة OpenSSL التي يعتمد عليها في كل عملية تشفير. الحجم مهم لأن كل سطر يمثل سطحًا للهجوم، ولأنك أنت والمراجع لن تقرآ 100,000 سطر. يمكنك قراءة 4,000 سطر.

يعمل في النواة. يوجد WireGuard في نواة Linux الرئيسية منذ الإصدار 5.6، لذلك توفره Ubuntu 24.04 وDebian 13 دون الحاجة إلى تجميع أي شيء. تُشفَّر الحزم في موضعها الحالي، ضمن مساحة النواة، دون نسخها إلى عملية في مساحة المستخدم ثم إعادتها. تحقّق من ذلك قبل أي شيء آخر:

sudo modprobe wireguard && echo ok

على VPS يعمل عبر KVM، يطبع الأمر ok. أما في المحاكاة الافتراضية للحاويات التي تشارك نواة المضيف، مثل OpenVZ أو LXC، فسيفشل مع Operation not supported، لأنك لا تستطيع تحميل وحدة إلى نواة لا تملكها.

لا يوجد شيء للتفاوض عليه. يستخدم WireGuard مجموعة تشفير ثابتة واحدة: ChaCha20-Poly1305 للبيانات، مع مفاتيح Curve25519. لا توجد نسخة يمكن خفضها، ولا خيار يمكن ضبطه خطأً. يتفاوض OpenVPN مع كل عميل على خوارزمية التشفير وإصدار TLS (أمان طبقة النقل). يوفر ذلك مرونة، لكنه أيضًا موضع حدوث أخطاء الإعداد. سيعود الخادم الذي تُرك مضبوطًا على data-ciphers AES-256-GCM:AES-128-CBC بسلاسة إلى خوارزمية CBC لعميل لا يقدم خيارًا أفضل، ولن يشير أي شيء في السجل إلى أن ذلك مشكلة.

لا يستجيب المنفذ. تُسقط حزمة WireGuard التي تفشل في فحص مصادقة الرسالة دون إرسال أي رد على الإطلاق، لذلك يعرض nmap -sU -p 51820 القيمة open|filtered سواء كان هناك شيء يستمع أم لا. يكمل خادم OpenVPN في وضع TCP مصافحة TCP قبل أن يقرر أنك غير مسموح لك بالاتصال، وهذا يكفي لإثبات أداة الفحص أن هناك خدمة موجودة. ويكاد تشغيل OpenVPN عبر UDP مع tls-crypt يكون صامتًا بالقدر نفسه، لذلك فهذه حجة ضد تشغيل OpenVPN على TCP، وليست حجة ضد OpenVPN نفسه.

التجوال مجاني. يُعرَّف نظير WireGuard بمفتاحه العام، لا بعنوانه. ينتقل حاسوبك المحمول من الشبكة المنزلية إلى نقطة اتصال محمولة، ويرسل مصافحة واحدة من العنوان الجديد، ثم يحدّث الخادم نقطة النهاية التي يرد عليها. لا يعاد الاتصال لأن الاتصال لم يكن قائمًا أصلًا. يستطيع OpenVPN فعل شيء مشابه باستخدام float، لكن العميل ينهي عادةً جلسة TLS كاملة ثم يعيد إنشاءها، ولذلك تكون فترة التوقف عند فتح الغطاء ملحوظة في OpenVPN ولا تظهر في WireGuard.

السرعة في 2026: تقلّص الفارق

لسنوات، كانت الحجة الصريحة المتعلقة بالسرعة هي أن OpenVPN ينسخ كل حزمة إلى مساحة المستخدم، ويشفّرها هناك، ثم ينسخها مرة أخرى، بينما لا يغادر WireGuard النواة مطلقًا. لم تعد هذه الصورة كاملة، وأصبحت المقارنة التي تتجاهل ذلك قديمة.

صدر OpenVPN 2.7 في فبراير 2026 مع دعم وحدة النواة ovpn، التي دُمجت في Linux 6.16. هذه هي ميزة DCO (تفريغ قناة البيانات): تبقى قناة التحكم في مساحة المستخدم، بينما ينتقل مسار البيانات الرئيسي إلى النواة، وهذا يشبه تقريبًا ما يفعله WireGuard منذ البداية. عند استخدام نواة وإصدار OpenVPN حديثين بما يكفي لدعمها، تكون سرعة النقل ضمن الفئة نفسها، لا ضمن فئة مختلفة. تحقّق مما لديك فعليًا:

uname -r
openvpn --version | head -n 1
modinfo ovpn 2>/dev/null | head -n 3

اعتبارًا من يوليو 2026، يأتي Ubuntu 24.04 LTS القياسي مع OpenVPN 2.6، وليس 2.7، كما تحتاج وحدة ovpn إلى الإصدار 2.7. في ذلك الإصدار، لا تحصل على التفريغ إلا من خلال الحزمة الأقدم openvpn-dco-dkms، التي تبني وحدة خارج شجرة النواة باستخدام نواتك قيد التشغيل، ولذلك تعيد بناءها عند كل ترقية للنواة. هذه مكوّن متغير لا يوجد لدى WireGuard.

اقرأ التفاصيل الدقيقة المتعلقة بـ DCO قبل أن تعتبرها سببًا للاستمرار في استخدام OpenVPN. فهي تدعم أنفاق Layer 3 فقط، ولا تقبل إلا شفرات AEAD (تشفيرًا موثّقًا مع بيانات مرتبطة: AES-GCM أو ChaCha20-Poly1305)، ولا تدعم الضغط، ولا تعمل على الخادم إلا مع topology subnet. كل قيد من هذه القيود يزيل جزءًا من المرونة التي كانت حجة OpenVPN الأساسية. إن OpenVPN السريع هو OpenVPN مُعدّ ليعمل بطريقة تشبه WireGuard.

لا تثق في أي رقم منشور لسرعة النقل، بما في ذلك الرقم الوارد في هذه الصفحة. عادةً ما يكون الحد الأقصى على VPS ناتجًا عن حصة المعالج أو حصة الشبكة، لا عن البروتوكول. قِس سرعتك باستخدام iperf3 أثناء تشغيله عبر النفق، ثم قِسها مرة أخرى خارجه، وقارن بين القياسين.

حيث يظل OpenVPN مفيدًا

تحتاج إلى الخروج عبر منفذ TCP 443. يعمل WireGuard عبر UDP فقط، وهذا مقصود، ولن يتوفر له نمط TCP. ستمرر شبكة فندق أو وكيل مؤسسي لا يسمح إلا بـ TCP 443 اتصال OpenVPN المُعد باستخدام proto tcp-server وport 443، لأن هذه الحركة تبدو كجلسة TLS عادية. يحتاج WireGuard إلى غلاف مثل wstunnel أو udp2raw لعبور الشبكة نفسها، ما يعني تشغيل عملية إضافية وتثبيت تحديثاتها. انتبه إلى التعارض: إذا كان خادم ويب يشغل TCP 443 على عنوان IP نفسه، فيجب نقل أحدهما.

لديك بالفعل سلطة شهادات. يصادق OpenVPN باستخدام شهادات X.509، ولذلك يندمج مع بنية مفاتيح عامة (PKI) تديرها بالفعل. تنتهي صلاحية الشهادات تلقائيًا، ويمكنك إبطال شهادة بإضافتها إلى قائمة إبطال الشهادات التي يقرأها الخادم عبر crl-verify. لا يستخدم WireGuard شهادات، ولا انتهاء صلاحية، ولا قائمة إبطال. تؤدي إزالة نظير إلى تعديل إعدادات الخادم وإعادة تحميلها. يكون ذلك مناسبًا عند وجود عشرة أقران. أما عند وجود أربعمائة، مع اشتراط التدقيق، فإن نموذج الشهادات يؤدي دورًا فعليًا لك.

تحتاج إلى مستخدمين مسمّين، وليس إلى مفاتيح فقط. يمكن لـ OpenVPN تفويض المصادقة إلى نظام خارجي باستخدام auth-user-pass-verify أو إضافة مثل openvpn-plugin-auth-pam.so، وهي الطريقة التي يضيف بها المسؤولون LDAP أو عامل مصادقة ثانيًا يعتمد على كلمة مرور لمرة واحدة. لا يتضمن WireGuard مفهوم المستخدم أصلًا. فإما أن يكون المفتاح موجودًا في الإعدادات أو لا يكون موجودًا. إذا كان مطلبك هو أن "تُدخل Sara رمزًا من هاتفها"، فلا يستطيع WireGuard التعبير عن ذلك بمفرده.

تحتاج إلى الطبقة 2، أو إلى عميل لشيء قديم جدًا. ينشئ OpenVPN باستخدام dev tap جسرًا لإطارات Ethernet، وهذا مهم لبروتوكولات البث وألعاب الشبكة المحلية القديمة. يعمل WireGuard في الطبقة 3 فقط، وسيظل كذلك دائمًا. كما يوفر OpenVPN عملاءً لأجهزة وأنظمة تشغيل لن يتوفر لها تطبيق WireGuard مطلقًا. يتناقص كلا السببين، كما أن dev tap غير متوافق مع DCO، لذلك ستستخدم المسار البطيء عند استخدام الجسر.

ما الذي يكلّفك به الإعدادان فعليًا

هوية WireGuard هي أمر واحد. وتهم الأقواس لأنها تضبط وضع الملف قبل إنشاء المفتاح:

(umask 077; wg genkey > private.key)
wg pubkey < private.key > public.key

المكافئ في OpenVPN هو سلطة شهادات ستظل مسؤولًا عنها طوال فترة تشغيل VPN:

sudo apt install -y easy-rsa
make-cadir ~/openvpn-ca
cd ~/openvpn-ca
./easyrsa init-pki
./easyrsa build-ca
./easyrsa gen-req server nopass
./easyrsa sign-req server server

لا توجد مبالغة في أي من القائمتين. تمنحك سلطة الشهادات صلاحية الانتهاء وإمكانية الإبطال. لكنها تتطلب مفتاحًا خاصًا يجب حمايته لسنوات، وتجديدًا يجب أن تتذكره، وإعادة بناء إذا فقدته. إذا لم تكن تستخدم ما توفره، فأنت تدفع مقابل لا شيء. يرد إجراء WireGuard الكامل، بما في ذلك إعادة التوجيه وNAT (ترجمة عناوين الشبكة) وإخفاقات المصافحة التي قد تهدر فترة بعد الظهر، في الدليل الخاص باستضافة VPN باستخدام WireGuard على VPS الخاص بك.

ما الذي يحتاجه كل منهما من جدار الحماية

يحتاج WireGuard إلى قاعدة واردة واحدة فقط، لبروتوكول UDP على المنفذ الموجود في ListenPort:

sudo ufw allow 51820/udp
sudo ufw status verbose

يحتاج OpenVPN إلى UDP على المنفذ 1194 افتراضيًا، أو إلى TCP على المنفذ 443 إذا اخترت هذا المسار. بعد ذلك، يحتاج كلاهما إلى تفعيل إعادة توجيه IP وإضافة قاعدة NAT للمصدر، لأن نظام Linux يسقط الحزم غير الموجّهة إليه. هذا الجزء متطابق في البروتوكولين، وهو سبب معظم البلاغات من نوع «يتصل النفق، لكن لا يوجد إنترنت». إذا كان ufw جديدًا عليك، فابدأ بقراءة أساسيات جدار حماية ufw على VPS، وتذكّر أن معظم موفري الخدمة يشغّلون جدار حماية شبكيًا ثانيًا في لوحة التحكم لديهم: لا تفيد القاعدة التي أضفتها على الخادم إذا لم تصل الحزمة إلى الخادم أصلًا. ويساعدك فهم ماهية المنفذ وكيف يستمع Linux عليه على إجراء كلا الفحصين بسرعة أكبر.

كيفية الاختيار في فقرة واحدة

شغّل WireGuard ما لم تتمكن من تحديد الشيء الذي لا يستطيع تنفيذه لك. إذا كنت تحتاج إلى TCP 443 لتجاوز شبكة مقيّدة، فشغّل OpenVPN عليها، وفكّر في تشغيلهما معًا: فهما يستخدمان منافذ مختلفة ويمكنهما العمل على خادم واحد دون تعارض. إذا كنت تحتاج إلى حسابات لكل مستخدم أو إلى عامل مصادقة ثانٍ، فلا تحاول فرض ذلك على WireGuard. أضف بدلًا من ذلك طبقة هوية فوقه. يتعامل خادم تحكم Headscale مستضاف ذاتيًا مع WireGuard في الطبقة الأساسية، ويضيف نموذج الحسابات وتوزيع المفاتيح والموافقة على الأجهزة، وهي أمور يتركها WireGuard العادي لك.

الترحيل من OpenVPN دون انقطاع

لا توجد عملية تحويل. لا تتحول بنية PKI الخاصة بـ OpenVPN إلى مفاتيح WireGuard، لأن WireGuard لا يستخدم شهادات يمكن تحويلها. يحصل كل عميل على زوج مفاتيح جديد، ويُنشأ بالطريقة نفسها المستخدمة لإنشاء زوج مفاتيح الخادم.

نفّذ الترحيل بالتوازي بدلًا من التبديل المباشر. يعمل WireGuard على UDP 51820 وOpenVPN على 1194 في الجهاز نفسه وفي الوقت نفسه. لذلك شغّل wg0، وتحقق منه باستخدام sudo wg show عبر عرض latest handshake حديث، ثم انقل العملاء واحدًا تلو الآخر. عندما تتوقف قائمة نظراء OpenVPN عن التغير، أوقف الخدمة باستخدام sudo systemctl disable --now openvpn-server@server. احتفظ بملفات CA حتى تتأكد، لأن إعادة إنشاء عميل أُلغيت شهادته باستخدام CA حذفتها غير ممكنة.

هناك أمر واحد لا ينتقل فعلًا: حسابات أسماء المستخدمين وكلمات المرور، وسجل الإلغاء المرتبط بها. حدّد مكان حفظ هذه البيانات قبل إيقاف الخادم القديم، وليس بعد ذلك.

FAQ

هل WireGuard أسرع من OpenVPN؟

نعم، على خادم Ubuntu 24.04 بالإعدادات الافتراضية، وبفارق كبير، لأن WireGuard يشفّر البيانات داخل النواة، بينما يمرّر OpenVPN 2.6 كل حزمة عبر عملية في مساحة المستخدم. مع OpenVPN 2.7 ووحدة النواة ovpn من Linux 6.16، يصبح مسار البيانات داخل النواة أيضًا، ويصبح البرنامجان ضمن الفئة نفسها. اختبر بيئتك باستخدام iperf3 عبر النفق بدلًا من الاعتماد على رقم وارد في مدونة، لأن الحد في VPS يكون عادةً قدرة وحدة المعالجة المركزية أو حصة النطاق الترددي.

هل يمكن تشغيل WireGuard عبر منفذ TCP 443؟

ليس بمفرده. صُمم WireGuard للعمل عبر UDP فقط، ولا توجد خطة لإضافة وضع TCP. لعبور شبكة لا تسمح إلا بـ TCP 443، غلّفه داخل نفق مثل wstunnel أو udp2raw، ما يضيف عملية يجب تشغيلها وتصحيحها على الطرفين. إذا كان هذا القيد جزءًا من بيئة عملك المعتادة، فإن OpenVPN مع proto tcp-server وport 443 هو الخيار الأبسط.

هل أصبح OpenVPN غير آمن الآن؟

لا. يُعد OpenVPN الحالي، مع شفرة AEAD مثل AES-256-GCM وتفعيل tls-crypt، شبكة VPN آمنة وسليمة. يستند تفضيل WireGuard إلى عامل آخر: يحتوي OpenVPN على قدر أكبر بكثير من التعليمات البرمجية والخيارات، لذلك يتيح للمسؤول المرهق طرقًا أكثر بكثير لتهيئته بصورة خاطئة. الخيارات الأقل تعني أخطاء أقل.

أيهما أختار لشبكة VPN شخصية على VPS؟

WireGuard. زوج مفاتيح واحد لكل جهاز، وملف تهيئة واحد يتكون من نحو عشرة أسطر، ومنفذ UDP واحد مفتوح، ومصافحة تكتمل قبل أن تلاحظ أنها بدأت. اختر OpenVPN فقط إذا كنت تتصل بانتظام من شبكات تحظر UDP، أو إذا كان يجب أن تندمج مع مرجع مصادقة أو دليل مستخدمين موجود مسبقًا.