في هذا البرنامج التعليمي، سأقوم بإعداد خادم Open VPN تحت Docker مع CloudSigma. مع انتشار مواقع سحابة CloudSigma في جميع أنحاء العالم، يمكنك إنشاء خادم في أي منها والوصول إلى المحتوى من هناك.
إنشاء الجهاز
أولاً، سأقوم بإنشاء جهاز بالموارد التالية:
معالج بقوة 20 جيجاهرتز
ذاكرة عشوائية 16 جيجابايت
قرص SSD بمساحة 20 جيجابايت
أقوم بتركيب القرص باستخدام صورة Ubuntu 18.04 المتوفرة في مكتبة CloudSigma.
Ubuntu 18.04 : مثبت مسبقًا بنواة 64 بت مع برامج تشغيل VirtIO، والمستخدم الخارق (superuser)، وPython 2.7.15، وPip 18.0، وOpenSSL 1.1.0i، وCloud-init وآخر التحديثات حتى 2018-09-30.
تحديث جميع المستودعات والحزم الموجودة على الجهاز.
|
1 2 |
sudo apt update sudo apt upgrade |
الآن بعد أن أصبح نظامنا محدثًا، سأنتقل إلى تثبيت Docker. لمزيد من المعلومات حول Docker، يرجى التحقق هنا.
تثبيت Docker
يمكنني تثبيت Docker عن طريق تشغيل الأوامر التالية:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable" sudo apt-get update sudo apt-get install docker-ce |
OpenVPN
الآن بعد أن تم تثبيت Docker بنجاح، يمكنني البدء في تشغيل OpenVPN Access Server عليه. فيما يلي الأمر الخاص بإنشاء حاوية Docker جديدة لـ OpenVPN Access Server بالتكوين المحدد.
|
1 2 3 4 5 6 7 8 |
docker create \ --name=openvpn-as \ -v <path to data>:/config \ -e PGID=<gid> -e PUID=<uid> \ -e TZ=<timezone> \ -e INTERFACE=<interface> \ --net=host --privileged \ linuxserver/openvpn-as |
الأوامر التالية مذكورة في صفحة صورة Docker.
أين يجب أن يقوم openvpn-as بتخزين ملفات التكوين:
|
1 |
-v /config |
بالنسبة لـ GroupID:
|
1 |
-e PGID |
مستعمل لـ UserID:
|
1 |
-e PUID |
لإعداد المنطقة الزمنية:
|
1 |
-e TZ |
إعداد الواجهة الافتراضية لـ openvpn-as هو eth0:
|
1 |
-e INTERFACE |
هام، بالنسبة لمعظم المستخدمين، يجب أن يعمل في وضع المضيف (host mode):
|
1 |
--net=host |
هام، لن يعمل إلا إذا كان في الوضع المتميز (privileged mode):
|
1 |
--privileged |
للحصول على معرف المجموعة (group id) ومعرف المستخدم (user id)، قم بتشغيل الأمر التالي:
|
1 |
id |
سأقوم بتحديد المنطقة الزمنية كـ CET.
بالنسبة للواجهة، قم بتشغيل الأمر التالي:
|
1 |
ip r |
عادةً ما تكون الواجهة ens3 أو eth0. بالنسبة لنظامي، فهي ens3.
بعد إضافة كل هذه الأشياء، سأقوم بتشغيل الأمر التالي:
|
1 2 3 4 5 6 7 8 |
sudo docker create --name=openvpn-as \ --restart=always \ -v /home/docker/openvpn-as/config:/config \ -e INTERFACE=ens3 \ -e PGID=1004 -e PUID=1000 \ -e TZ=Europe/Warsaw \ --net=host --privileged \ linuxserver/openvpn-as |
بما أن الصورة ليست موجودة بالفعل في نظامنا، فسيتم سحب الصورة من الخادم. ستكون النتيجة:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
تعذر أن يجد صورة 'linuxserver/openvpn-as:latest' محليًا latest: جاري السحب من linuxserver/openvpn-as 56d9dc91333b: سحب مكتمل 1356b0cfc067: سحب مكتمل 155f3c53d4a5: سحب مكتمل 05088c205b6d: سحب مكتمل 112068b0fa4e: سحب مكتمل 2ff5dd4a0d9b: سحب مكتمل 7dd87385ca73: سحب مكتمل d966d969c7cd: سحب مكتمل 4439dbcda217: سحب مكتمل 5f960f89c64e: سحب مكتمل Digest: sha256:d65f743bcec24b6b6ad0b19f9d7876cd70d5237690a940301b2366d6d5767a80 الحالة: تم تنزيل أحدث صورة لـ linuxserver/openvpn-as:latest f0a1eb5440b5a423f8f21081d8654aaba2c0bd9995d2dea88a979c97ea977e16 |
بدء تشغيل الحاوية بهذا الأمر:
|
1 |
sudo docker start openvpn-as |
تسجيل الدخول
الآن بعد أن قمت بتشغيله، سأذهب إلى لوحة تحكم المسؤول لخادم الوصول.
الذهاب إلى عنوان URL: https://<<YourIpAddress>>:943/admin

سيطلب اسم المستخدم وكلمة المرور واللذين يكونان افتراضيًا:
اسم المستخدم: admin
كلمة المرور: password

الآن بعد أن قمت بتسجيل الدخول، يسألني عما إذا كنت أوافق على اتفاقية ترخيص المستخدم النهائي (EULA). سأضغط على موافق وأنتقل إلى لوحة تحكم المسؤول.

يوصى بتغيير كلمة مرور حساب المسؤول لأغراض أمنية. سأقوم بتغييرها باستخدام الأمر التالي:
|
1 |
docker exec -it openvpn-as passwd admin |
تكوين الـ DNS
الآن بعد أن أصبح خادمنا قيد التشغيل، سنرغب في تكوين الـ DNS فيه. لمزيد من المعلومات حول خوادم أسماء النطاقات (DNS)، يرجى النقر هنا.
أحد أسرع خوادم الـ DNS هو خادم Google’s. سأقوم بتكوين ذلك في خادم الوصول OpenVPN الخاص بي، حتى يتمكن عملائي من تصفح المواقع الإلكترونية بسهولة.
سأذهب إلى إعدادات الـ VPN وتحت إعدادات الـ DNS، سأقوم بتمكين "جعل العملاء يستخدمون خوادم DNS محددة".

بعد ذلك، سأدخل العناوين التالية في أعمدة خادم الـ DNS:
خادم DNS الأساسي: 8.8.8.8
خادم DNS الثانوي: 8.8.8.4

احفظ الإعدادات وانقر على "تحديث الخادم قيد التشغيل". سيقوم بتحديث الخادم قيد التشغيل.
الآن بعد أن قمت بتكوين الخادم بنجاح، يمكنني الانتقال نحو الاتصال بالـ VPN من خلال نظامي.
الوصول إلى واجهة مستخدم العميل على: https://<<YourIpAddress>>:943.
أدخل اسم مستخدم المسؤول، وكلمة مرور المسؤول أو أنشئ مستخدمًا جديدًا من قسم إدارة المستخدمين في لوحة تحكم المسؤول.
بمجرد تسجيل الدخول إليه، سيعطيني خيارات متنوعة لأنظمة التشغيل المختلفة. سأختار Windows وأقوم بتنزيل برنامج العميل.

الآن بعد تثبيته، يمكنني تشغيله من قائمة ابدأ أو سيظهر تلقائيًا. من علبة النظام، يمكنني الاتصال بالـ VPN باستخدام الحساب الذي قمت بإعداده سابقًا.

وقد اتصلت بالـ VPN. وها هو ذا! هذه هي طريقة إنشاء خادم VPN تحت Docker.
التعليقات
لا توجد تعليقات بعد. كن أول من يعلق.