VpnHood!

تثبيت VpnHood! SERVER باستخدام Docker

شغّل الخادم كحاوية على أي جهاز Linux يعمل بنظام Docker. أمر واحد يكفي لتثبيته كخادم مُدار أو مستقل، وتتكفل الحاوية بإبقائه قيد التشغيل ومُحدّثًا باستمرار.

قبل أن تبدأ

  • جهاز Linux مزود بعنوان IP عام، بمعمارية x64 أو arm64. الحاوية مبنية لتدعم كلاهما. تسرد صفحة متطلبات النظام الأنظمة التي يعمل عليها الخادم.
  • صلاحيات Root.
  • برنامج Docker مع إضافة compose. يمكن لأداة التثبيت تثبيته تلقائيًا على Ubuntu وDebian والتوزيعات المبنية عليهما.
  • منفذ TCP 443 مفتوح، في جدار حماية الجهاز ولدى مزود الاستضافة معًا. تتشارك الحاوية شبكة المضيف، لذا يستمع الخادم على منفذ المضيف مباشرةً.

تثبيت خادم مستقل

شغّل هذا الأمر. سيسألك عما إذا كنت تريد تثبيت Docker، ثم ينزّل ملف compose ويبدأ تشغيل حاوية الخادم.

sudo bash -c 'u=https://github.com/vpnhood/VpnHood.App.Server/releases/latest/download/VpnHoodServer.docker.sh; bash <(wget -qO- $u 2>/dev/null || curl -fsSL $u)'

لتثبيته عبر برنامج نصي تلقائي وبدون مطالبات تأكيد، راجع خيارات برنامج التثبيت.

يحتفظ الخادم بإعداداته ومفاتيحه وسجلاته في /opt/VpnHoodServer/storage على الجهاز المضيف، لتبقى محفوظة حتى عند ترقية الحاوية أو إزالتها.

إنشاء مفتاح وصول

نفّذ هذا الأمر على الجهاز. يتم إنشاء المفتاح داخل حاوية الخادم، لذا فهو يعتمد إعدادات الخادم نفسها مباشرةً.

sudo docker exec VpnHoodServer /app/vhsupervisor gen

على سبيل المثال، مفتاح لهاتف واحد

sudo docker exec VpnHoodServer /app/vhsupervisor gen -name Phone -maxClient 1

المخرجات والخيارات مطابقة لما هو عليه في الخادم المستقل المُثبت بدون Docker: انسخ السطر الموجود أسفل --- AccessKey ---، وراجع إنشاء مفتاح الوصول الأول لمعرفة خيارات تقييد المفتاح.

الاتصال

ثبّت تطبيق VpnHood! CLIENT على كل جهاز، ثم أضف المفتاح واتصل.

تشغيل الخادم وإيقافه وفحصه

الحاوية باسم VpnHoodServer. يُعيد Docker تشغيلها تلقائياً عند إعادة تشغيل الجهاز، كما يُعاد تشغيل الخادم بداخلها في حال توقفه المفاجئ.

sudo docker logs VpnHoodServer
sudo docker stop VpnHoodServer
sudo docker start VpnHoodServer

يُحفظ السجل نفسه في /opt/VpnHoodServer/storage/logs/server.log على الجهاز المضيف.

تغيير الإعدادات

يقرأ الخادم إعداداته من /opt/VpnHoodServer/storage/appsettings.json. عدّل الملف، ثم أعد تشغيل الحاوية باستخدام sudo docker restart VpnHoodServer.

إذا تعذر عليك تعديل الملف، ضع محتوى appsettings.json بالكامل في متغير البيئة VH_APPSETTINGS، وسيستخدمه الخادم بدلاً من الملف.

يشرح لك دليلا تعيين عناوين IP لخادمك واستخدام اسم نطاق وشهادة موثوقة أهم الإعدادات التي قد تحتاج لتعديلها.

التحديثات

يُحدّث الخادم نفسه تلقائياً داخل الحاوية؛ حيث يتحقق من وجود إصدارات جديدة عند بدء التشغيل وكل 12 ساعة، ثم يُعاد تشغيله بالنسخة الجديدة.

للبقاء على إصدار محدد، اضبط VH_AUTO_UPDATE=0 في بيئة الحاوية.

قد يتطلب أحد الإصدارات صورة أحدث بين الحين والآخر. في هذه الحالة، يحتفظ الخادم بإصداره الحالي ويظهر في سجله Pull the latest image!. ما عليك سوى تشغيل أمر التثبيت مجدداً لسحب أحدث صورة وإعادة إنشاء الحاوية مع الاحتفاظ بنفس الإعدادات والمفاتيح.

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

إلغاء التثبيت

لإزالة الخادم، احذف الحاوية وصورتها. ستبقى الإعدادات ومفاتيح الوصول والشهادات محفوظة في /opt/VpnHoodServer/storage على الجهاز المضيف لإعادة استخدامها لاحقًا.

sudo docker rm -f VpnHoodServer && sudo docker rmi vpnhood/vpnhoodserver

حذف الإعدادات والمفاتيح نهائيًا: لن تتمكن الأجهزة التي تملك المفاتيح من الاتصال مجددًا، حتى بعد إعادة التثبيت

sudo rm -rf /opt/VpnHoodServer

إنشاء الحاوية يدوياً

إذا كنت تدير حاوياتك يدوياً، فهذه هي الحاوية التي ينشئها برنامج التثبيت. شغّلها على شبكة المضيف كما يفعل برنامج التثبيت.

sudo docker run -d --name VpnHoodServer --network host --restart always --stop-timeout 30 -v /opt/VpnHoodServer/storage:/app/storage vpnhood/vpnhoodserver

للترقية إلى صورة أحدث، اسحب vpnhood/vpnhoodserver ثم أنشئ الحاوية مجدداً.

الخطوات التالية