بالنسبة لمديري النظام، Webmin هو بمثابة هبة. فهو عبارة عن لوحة تحكم قائمة على الويب تتيح إدارة جهاز Linux عن بُعد، باستخدام واجهة حديثة قائمة على الويب. يمكن لـ Webmin تغيير تكوينات النظام المختلفة بسرعة، بما في ذلك خوادم الويب وقواعد البيانات. ويمكنه أيضًا إدارة المستخدمين والمجموعات وحزم البرامج.
في هذا الدليل، سنرشدك خلال خطوات تثبيت وتكوين Webmin على Ubuntu 18.04.
Webmin على Ubuntu
على الرغم من أن Webmin أداة شائعة لمديري النظام، إلا أنها غير متوفرة في مستودعات Ubuntu الرسمية. لحسن الحظ، يمتلك Webmin مستودع PPA مخصصًا لنظام Ubuntu. وهو يتولى مهمة إبقاء البرنامج محدثًا باستمرار. إليك المتطلبات الأساسية التي ستحتاجها قبل أن نبدأ:
- ستحتاج إلى خادم Ubuntu مع مستخدم sudo غير جذري وجدار حماية. تحقق من كيفية تثبيت خادم Ubuntu الخاص بك هنا، و كيفية إعداد مستخدم sudo الخاص بك هنا.
- نظرًا لطبيعة Webmin، من المهم حماية الوصول إليه من الأيدي غير المرغوب فيها. بشكل افتراضي، يأتي Webmin مع مجموعة من ميزات الأمان. ومع ذلك، في هذا الدليل، سيتم تأمين Webmin باستخدام Let’s Encrypt و Apache. اتبع هذا البرنامج التعليمي لـ تثبيت خادم Apache الخاص بك.
- بالنسبة للبرنامج التعليمي التالي، تحتاج أيضًا إلى الحصول على اسم نطاق مؤهل بالكامل (FQDN) مع سجل DNS يشير إلى عنوان IP الخاص بالخادم.
- ستحتاج أيضًا إلى Certbot، والذي يمكنك اتباع كيفية تثبيته من الخطوة 1 من برنامجنا التعليمي حول تأمين Apache باستخدام Let’s Encrypt على Ubuntu 18.04. ستستخدم Certbot لإنشاء شهادة TLS/SSL لـ Webmin.
الآن، لنبدأ!
تثبيت Webmin على Ubuntu
لتثبيت Webmin، نحتاج إلى إضافة مستودع Webmin PPA. أولاً، تأكد من أن النظام يحتوي على جميع التبعيات اللازمة:
|
1 |
sudo apt update && sudo apt install software-properties-common apt-transport-https wget |
بعد ذلك، قم باستيراد مفتاح Webmin PGP:
|
1 |
wget -q http://www.webmin.com/jcameron-key.asc -O- | sudo apt-key add - |
أخيرًا، أضف مستودع Webmin:
|
1 |
sudo add-apt-repository "deb [arch=amd64] http://download.webmin.com/download/repository sarge contrib" |
يمكن لـ APT الآن التعرف على Webmin PPA. قم بتحديث ذاكرة التخزين المؤقت لـ APT:
|
1 |
sudo apt update |
أخيرًا، قم بتثبيت Webmin:
|
1 |
sudo apt install webmin |
بمجرد اكتمال التثبيت، سيظهر شيء مثل هذا، مما يشير إلى أنه يمكن الوصول إلى Webmin مباشرة من خلال الرابط التالي. في هذا المثال، يتم استخدام اسم مضيف النظام الخاص بي:
|
1 |
https://localhost:10000 |
ويذكر أنه للحصول على تحكم كامل في النظام باستخدام Webmin، يجب على المستخدم معرفة كلمة مرور الجذر. ومع ذلك، هذا لا يكفي لتأمين شيء حساس مثل Webmin. سنضعه خلف خادم ويب Apache مع شهادة TLS/SSL صالحة كما ذكرنا سابقًا.
تأمين Webmin
للوصول إلى Webmin، الطريقة الافتراضية هي فتح المنفذ 10000 مفتوحًا. في حالتنا، هذا ليس مثاليًا. لحل هذه المشكلة، سنقوم بتكوين مضيف افتراضي لـ Apache كوكيل لخادم Webmin الذي يعمل على المنفذ 10000. بعد ذلك، سيتم تأمين المضيف الافتراضي باستخدام شهادة TLS/SSL تم الحصول عليها من Let’s Encrypt. يتطلب هذا الإجراء أن تكون قد قمت بتثبيت خادم ويب Apache وCertbot وتكوينهما بشكل صحيح.
- إنشاء مضيف افتراضي جديد لـ Apache
سيتم تحديد المضيف الافتراضي الجديد من خلال ملف التكوين الخاص به. افتح ملف التكوين في محرر النصوص الذي تختاره:
|
1 |
sudo vim /etc/apache2/sites-available/my_domain.conf |
في الملف، أضف الأسطر التالية:
|
1 2 3 4 5 6 |
<VirtualHost *:80> ServerAdmin <email> ServerName <domain> ProxyPass / http://localhost:10000/ ProxyPassReverse / http://localhost:10000/ </VirtualHost> |
يخبر Apache بتمرير الطلبات الواردة إلى المضيف الافتراضي إلى خادم Webmin في الموقع التالي. كما يضمن أيضًا مرور الروابط الداخلية التي تم إنشاؤها بواسطة Webmin عبر Apache.
- تعطيل Webmin TLS/SSL
نظرًا لأننا سنقوم بتكوين Apache باستخدام TLS/SSL، فلا داعي لأن يكون لدى Webmin بروتوكول TLS/SSL الخاص به. يوصى بتعطيل هذه الميزة من Webmin. بعد ذلك، افتح ملف تكوين Webmin في محرر النصوص الذي تختاره:
|
1 |
sudo vim /etc/webmin/miniserv.conf |
ثم ابحث عن السطر التالي:
|
1 |
ssl=1 |
هنا، تشير القيمة "1" إلى أن Webmin قد تم تمكين SSL فيه. بعد ذلك، اضبط القيمة على "0" لتعطيل Webmin SSL.
- إضافة النطاق إلى Webmin
بشكل افتراضي، لن يسمح Webmin لنطاقنا بالوصول إليه. وذلك لأن هذا الوصول يمكن أن يكون جزءًا من هجوم ضار، على سبيل المثال، هجوم نصي برمجى عابر للمواقع (XSS).
لضمان سماح Webmin بنطاقنا، يجب الإعلان عنه في تكوين Webmin. افتح ملف التكوين باستخدام محرر النصوص المفضل لديك:
|
1 |
sudo vim /etc/webmin/config |
في الجزء السفلي من النص، أضف السطر التالي:
|
1 |
referers=<domain> |
بعد ذلك، احفظ النص، واخرج من المحرر، وأعد تشغيل خدمة Webmin لتطبيق جميع التغييرات:
|
1 |
sudo systemctl restart webmin |
- تكوين Apache
نحتاج إلى وحدة proxy_http الخاصة بـ Apache. سيقوم الأمر التالي بتمكينها:
|
1 |
sudo a2enmod proxy_http |
يقترح إعادة تشغيل Apache. ومع ذلك، تحتاج إلى تمكين المضيف الافتراضي الجديد أولاً:
|
1 |
sudo a2ensite <domain> |
أخيرًا، أعد تشغيل Apache. سيؤدي ذلك إلى تمكين الوحدة والمضيف الافتراضي:
|
1 |
sudo systemctl restart apache2 |
سيقوم الأمر التالي بتكوين جدار الحماية للسماح بحركة المرور الواردة على المنافذ 80 و 443 (منافذ Apache الافتراضية لحركة مرور HTTP/HTTPS):
|
1 |
sudo ufw allow in "Apache Full" |
للتحقق من نجاح التكوين، انتقل إلى نطاقك. يجب أن تظهر صفحة تسجيل الدخول إلى Webmin. ومع ذلك، لا تقم بتسجيل الدخول إلى Webmin. نظرًا لعدم تنفيذ TLS/SSL بعد، فإنه سيتواصل عبر HTTP، ويرسل جميع البيانات بتنسيق نصي واضح:
|
1 |
http://<domain> |
- تكوين TLS/SSL
نحتاج إلى certificate for our domain حتى يتم تشفير الاتصال. للقيام بذلك، سنستخدم Let’s Encrypt. وهي جهة إصدار شهادات (CA) مجانية ومؤتمتة ومفتوحة. تعمل لصالح العامة، وتقدمها مجموعة أبحاث أمن الإنترنت (ISRG).
لإنشاء الشهادة، certbot هي الأداة المستخدمة في واجهة الأوامر (shell). قم بتشغيل أمر certbot التالي لإنشاء شهادة TLS/SSL لنطاقك وتكوين Apache لإعادة توجيه حركة المرور إلى الموقع الآمن:
|
1 |
sudo certbot --apache --email <email> -d <domain> --agree-tos --redirect --noninteractive |
سيبدو المخرج كالتالي:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
حفظ تصحيح الأخطاء سجل إلى /var/log/letsencrypt/letsencrypt.log المكونات الإضافية المحددة: Authenticator apache, Installer apache الحصول على ـ جديدة شهادة إجراء الـ التالية التحديات: http-01 تحدي لـ <domain> تم تمكين Apache rewrite وحدة في انتظار ـ التحقق... تنظيف ـ التحديات تم إنشاء ـ SSL vhost في /etc/apache2/sites-available/<domain>-le-ssl.conf تم تمكين Apache socache_shmcb وحدة تم تمكين Apache ssl وحدة نشر الشهادة إلى VirtualHost /etc/apache2/sites-available/<domain>-le-ssl.conf تمكين المتاح الموقع: /etc/apache2/sites-available/<domain>-le-ssl.conf تم تمكين Apache rewrite وحدة إعادة توجيه vhost في /etc/apache2/sites-enabled/<domain>.conf إلى ssl vhost في /etc/apache2/sites-available/<domain>-le-ssl.conf ------------------------------------------------------------------------------- تهانينا! لقد قمت بنجاح بتمكين https://<domain> يجب عليك اختبار التكوين الخاص بك في: https://www.ssllabs.com/ssltest/analyze.html?d=<domain> ------------------------------------------------------------------------------- |
يشير هذا إلى أن تثبيت الشهادة كان ناجحًا وتم تكوين Apache بنجاح لإعادة توجيه الطلبات من http://<domain> إلى https://<domain>.
استخدام Webmin
أخيرًا، نحن جاهزون لإدارة النظام باستخدام Webmin. افتح نطاق Webmin من متصفح الويب وقم بتسجيل الدخول كمستخدم root (أو أي مستخدم آخر لديه امتيازات sudo).
- إدارة المستخدمين والمجموعات
أولاً، دعنا نرى كيفية إدارة المستخدمين والمجموعات باستخدام Webmin. من اللوحة اليسرى، انتقل إلى System >> Users and Groups:

لإنشاء مستخدم جديد، انقر فوق Create a new user:

بعد ذلك، املأ المعلومات المطلوبة للمستخدم الجديد. انقر فوق Create لإنهاء الإجراء:

- تحديثات الحزم
يمكن لـ Webmin أيضًا التحقق من تحديثات الحزم المتاحة. من اللوحة اليسرى، انقر فوق أيقونة Dashboard أيقونة:

ستعرض Dashboard ملخصًا سريعًا لإحصاءات النظام. ضمن قسم System Information، حدد موقع تسمية Package updates . ستوضح ما إذا كان هناك أي تحديث متاح لأي حزمة.
بدلاً من ذلك، من اللوحة اليسرى، انتقل إلى System >> Software Package Updates. ضمن علامة التبويب Package Updates ، سيعرض Webmin جميع الحزم التي تتوفر لها تحديثات:

ضمن علامة التبويب Scheduled Upgrades ، يقدم Webmin خيار أتمتة تثبيت تحديثات الحزم:

بعد ذلك، أسفل علامة التبويب Package Repositories ، يوفر Webmin طريقة سهلة لإدارة جميع مستودعات الحزم المكونة في النظام:
- تشغيل الأوامر المخصصة
بينما يقدم Webmin الكثير من الخيارات والتخصيصات، لا تزال هناك أشياء يجب القيام بها يدويًا. يمكن لـ Webmin تشغيل أي أمر shell. لتشغيل أمر، من اللوحة اليسرى، انتقل إلى Tools >> Command Shell:

بعد ذلك، أدخل الأمر المطلوب، وانقر فوق Execute command لتشغيله:

هل تقوم بتشغيل أوامر معينة بانتظام؟ فكر في تحديدها في Webmin. من اللوحة اليسرى، انتقل إلى Tools >> Custom Commands. لا داعي لكتابة تلك الأوامر يدويًا بعد الآن:

- إدارة Apache
بالإضافة إلى ذلك، إذا كان هناك أي محرك خادم مثبت، فيمكن لـ Webmin إدارته. في هذا المثال، استخدمنا Apache. لإدارة Apache من خلال Webmin، انتقل إلى الخوادم >> Apache:

أفكار نهائية
يعد Webmin أداة مفيدة للغاية لإدارة نظامك بالكامل. فهو يوفر طريقة مريحة للقيام بأشياء تتطلب عادةً تفاعلاً مملاً مع شاشة وحدة التحكم. علاوة على ذلك، فهو يساعدك على تنظيم نظامك بدقة. يعرض هذا الدليل التطبيقات الأكثر فائدة لـ Webmin. لا تتردد في استكشاف ويكي Webmin الرسمي لمعرفة المزيد حول كيفية الاستفادة من الأداة بأفضل شكل ممكن.
حوسبة سعيدة!



التعليقات
لا توجد تعليقات بعد. كن أول من يعلق.