webmin هي واجهة رسومية GUI تتيح للمستخدم العمل وتجربة كافة أدوات خادم الويب.
تحقق webmin تناغمًا وانسجامًا مع أنظمة تشغيل Linux بتوزيعاتها المختلفة.
بالتالي فقد حظيت بالاستخدام على نطاق واسع في استضافات الإنترنت وعالم الشّبكة عمومًا.
حيث توفّر بذلك واجهة أنيقة وأكثر فعاليّة في إدارة مواقع الويب.
تسمح webmin بتتبع حركات الزّائرين على الخادم وإلغاء وتفعيل بعض الخدمات والقيود.
كما تتوافق مع جميع أنظمة Linux وذلك لمدى قدرتها على إدارة بيانات الموقع الإلكتروني بطريقة شاملة.
على سبيل المثال تتيح webmin عمليات الوصول المباشر إلى ملفات root في أنظمة التشغيل.
بالإضافة إلى رفع وتحرير الملفات يدوياً وآلياً من خلال بروتوكولات FTP وغيرها.
مزايا واجهة Webmin
- إضافة أكثر من خادم افتراضي.
- تتبع ومراقبة خادم الويب وسجلاته.
- استحداث نسخ احتياطي يومي أو اسبوعي.
- تفعيل شهادات الأمان والبريد الإلكتروني.
- تتبع نشاطات المعالج وبطاقة الذاكرة.
- التوافق مع تقنيات Swap بأنظمة Linux.
تمنح واجهة webmin مزايا وخصائص إضافيّة قد لا تتوفر في واجهات إدارة الخوادم الأخرى.
فهي تعمل بشكل موازٍ مع خوادم Apache و Nginx أو حتى خوادم أخرى مثل لايت سبيد.
بالإضافة إلى مزايا أخرى عديدة على رأسها تفعيل جدار الحماية والوصول لخصائص PHP وإدارة خادم قواعد البيانات.
مع ذلك تدعم واجهة webmin قوالب المواقع مثل وورد بريس وغيرها من القوالب المتوافقة.
إدارة الخوادم المنفردة
لا بد من ذكر أن جميع الخدمات المقدمة على واجهة webmin تدعم تكوين خوادم معزولة بطبيعة الحال.
وعند الإشارة إلى البعض منها فإن ذلك يشير إلى حافظة مستقلة من الوظائف يتم تفعيلها دون تأثر البقية.
توفر أنظمة التشغيل تجريداً في السيطرة على الخوادم لكنها تتشارك في مصادر العتاد مثل الذاكرة وسرعة المعالج ووسائط التخزين.
على سبيل المثال عند العمل على خادم ما يتيح FTP إمكانية تحميل ورفع البيانات دون تأثر بقية الخوادم بمهامه.
خطوات تفعيل webmin
وعلى أثر تنصيب واجهة webmin لا بد من تخطي جوانب عديدة بتقنيات الويب وخدمات Linux .
وفي الحالة الخاصة بنا سوف نقوم بتنصيب واجهة webmin على إحدى أنظمة لينيكس وليكن Cent os 7.
تهيئة بيئة عمل Webmin
يمكن الدخول عبر الحساب الرئيسي Root الخاصة بمسؤولي النظام.
- في نظام لينيكس لا بد من تفعيل خادم DHCP من أجل الحصول على عنوان IP خاص بالشبكة المحليّة.
dhclient
- عند تنصيب النظام لأوّل مرة, من المستحسن إجراء بعض التحديثات على النواة.
sudo yum clean all sudo yum update
- في حال طلب الأذونات بشأن بعض التحديثات يجب أن تتم الموافقة عليها من خلال الضغط على حرف Y ثم Enter.
إضافة خادم Apache
بعد الانتهاء من التحديثات نعمل على إضافة خادم ويب على النظام.
هناك العديد من الخوادم المتاحة التي يمكن تنصيبها في حالتنا هنا نقوم بإضافة خادم Apache.
sudo yum install httpd -y
- عند الانتهاء من تنصيب Apache يجب تفعيل الخادم أولاً.
sudo systemctl start httpd.service
- في حال طلب أذونات تفعيل الحزمة , نقوم بالموافقة عليها.
- وبعد ذلك يمكن التحقق من عنوان IP الخاص بالخادم الافتراضي عبر الأمر ip address show.
يعتمد العنوان الظاهر بحسب شبكة Lan الخاصة بالمضيف.
الآن نقوم بإيقاف جدار الحماية مؤقتًا
sudo systemctl stop firewalld
- نقوم بفتح المتصفّح بإدخال عنوان IP الخاص بالخادم.
- وفي حالتنا هنا نحاول الدخول عبر العنوان 192.168.100.5.
بعد أن تم تجهيز خادم الويب يمكننا الاستمرار في إضافة المزيد من التكوينات.
تنصيب خادم قواعد البيانات
قواعد البيانات هي مجموعة من الحقول المليئة ببيانات الموقع مثل الحسابات والصفحات والمقالات.
ويجب تنصيبها على خادم الويب لكي يتم بناء المحتوى بطريقة ديناميكية وبعيدة عن الطرق القديمة في نشأة الصفحات.
يمكن تنصيب نظم إدارة البيانات على الخادم mysql mariadb أو حتى أوراكل.
حيث أن هناك أكثر من 20 تقنية متاحة للمستخدم إذا ما قرر الاختيار.
- في الحالة الخاصة بنا سوف نعمل على تنفيذ قواعد البيانات MariaDB.
sudo yum install mariadb-server mariadb -y
- يجب تفعيل قواعد البيانات في حال كانت مغلقة بواسطة الأمر التالي.
sudo systemctl start mariadb
- يمكن تفعيل الحماية على صلاحيات استخدام قواعد البيانات (اختياري).
sudo mysql_secure_installation
- الآن نتحقق فيما لو قام الخادم بتنفيذ المهام بنجاح عبر السطر التالي.
service mariadb status
تتيح لنا قواعد البيانات تهيئة بيئة الموقع بما في ذلك برامج تحرير المحتوى والقوالب التصميميّة.
بالتالي فإن التحقق من تفعيلها هو أمر سوف يتم قطف ثماره لاحقًا.
تنصيب بيئة عمل PHP
تسري عمليات برمجة وإدارة الخادم وفقاً للغات تتولى المهام الخلفية في إدارة الموقع.
وتتربع لغة PHP على لائحة عمليات البرمجة وربط المعالجة من جهة الخادم.
ولا شك بأن هناك تقنياتٍ منافسة مثل Nodejs أو حتى Asp.net.
على الرغم من ذلك فقد حققت PHP انسجامًا كبيرًا في إدارة صفحات الويب والسيطرة على مسار البيانات.
قد تتطلب عملية العثور على بيانات الصفحة تدخلاً مباشراً من قبل لغة PHP في جلبها.
فهي بمثابة عقل خادم الويب تمامًا مثلما فعلت لغة سي في أنظمة التشغيل.
- نعمل على تفعيل حزمة Epel-release أولا.
sudo yum install epel-release yum-utils
- ثم تنصيب الجزء الخاص بــ Remirepo كونها إحدى مصادر اللغة.
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
- سيتطلب منا ذلك تفعيل الخدمة على الخادم.
sudo yum-config-manager --enable remi-php73
- الآن وبعد تجهيز كافة المصادر نقوم بنسخ التعليمة الخاصة بتنصيب اللغة.
sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl
- وفي حال ما أردنا التحقق من إصدار اللغة نقوم بكتابة الأمر php -v وسيظهر الإصدار الحالي على شاشة الكونسول.
تنصيب بيئة عمل Webmin
يتطلب منا الوصول إلى مصادر webmin من خلال تضمين إحدى الروابط في ملف ما.
ولا سيما عندما يحتاج النظام الوصول إليه.
لذا فإننا نقوم بنسخ الشيفرة التالية داخل شاشة النظام.
sudo vi /etc/yum.repos.d/webmin.repo
- بعد تطبيق التعليمة السابقة يفتح لنا ملف نصي.
- نقوم بالضغط على حرف S بلوحة المفاتيح لتفعيل خاصية إدخال النص.
- ثم القيام بنسخ المصادر التالية داخل الملف والموافقة على حفظه.
[Webmin] name=Webmin Distribution Neutral #baseurl=http://download.webmin.com/download/yum mirrorlist=http://download.webmin.com/download/yum/mirrorlist enabled=1
- هناك طرق متعددة لحفظ الملف.
- نقوم بالضغط على Esc ومن ثم Shift+wq وبعدها wq ثم Enter.
ملاحظة: wq تعني الحرف w والحرف q .
- نقوم بتنصيب ملفات مكتبة wget لكي نتمكن من دعم جميع التعليمات القادمة في الخطوات.
sudo yum install wget
- يجب إضافة مفتاح منتج webmin لكي نتمكن من تحميل كافة المصادر المتعلقة بواجهة webmin.
- نقوم بنسخ التعليمة التالية داخل الشاشة واحدة تلو الأخرى.
wget http://www.webmin.com/jcameron-key.asc sudo rpm --import jcameron-key.asc
- في حال ما أردنا التنصيب على الشبكة المحلّية دون عنوان IP مدفوع مسبقاً.
- نقوم بإضافة النص المشار إليه بالصورة إلى نفس السطر الأول في التعليمة السابقة.
- بالتالي تصبح الشيفرة على النحو التالي:
- بعد ذلك نقوم بالخطوة الأخيرة وهي تنصيب webmin بالتعليمة التالية.
sudo yum install webmin
- بعد الانتهاء من التنصيب. وفي حال امتلاك استضافة ويب سوف يتم الإشارة إلى منفذ يمكن من خلاله الدخول إلى واجهة Webmin.
- يمكن الوصول إلى الواجهة من خلاله.
- أما في حالتنا فقد قمنا بإجراءات التنصيب على خادم محلي.
- يمكن الوصول إلى الواجهة الخاصة بـ webmin عن طريق العنوان الذي قام الحاسوب بتجهيزه.
بعد ظهور شاشة webmin لأوّل مرة , يجب إدخال حساب root الذي قمنا بتنصيبه على نظام centos 7.
وفيما بعد يمكننا إضافة وتكوين حسابات أخرى.
خصائص webmin
تتيح واجهة webmin العمل عليها دون الرجوع إلى شاشة ssh او حتى شاشة الكونسول في نظام التشغيل سوى في حالاتٍ نادرة.
كما تقدّم كافّة أدوات الحماية للخوادم الحقيقية. تزامنًا مع تقنيات ويب أنظمة Linux الرائجة.
بالتالي يمكن إدراج ذاكرة إضافية عبر تقنيات swap files.
حيث يتم من خلالها الحصول على أداء مضاعف وخاصة في حال ما قرر المطور بناء عشرات المواقع الإلكترونيّة.
نبذة عن خوادم الويب
لا شك بأن كل من يمتلك موقع ويب يحصل على نطاق ساري المفعول لكي يتم توجيه الزائرين إلى بيانات موقعه.
على سبيل المثال , المحتوى وقوالب التصميم وواجهات التنقّل في الموقع.
حيث أن الغالبيّة من أصحاب المواقع يذهبون إلى الاستضافات المشتركة في رفع أو بناء محتويات الموقع.
في المقابل هناك العديد من الشركات التي تعمل على توفير الخدمة لكافة المستخدمين نظراً لتكلفتها المنخفضة.
لكن , من عيوب الاستضافات المشتركة تعذّر الحصول على عنوان IP خاص بك.
بالإضافة إلى تقاسم موارد العتاد مع بقيّة المشتركين في المضيف.
وهو ما يقود في نهاية المطاف إلى بطء في صفحات الموقع .
استضافة VPS
تعد استضافات VPS إحدى الموارد الشرائية المتاحة في إدارة المواقع.
فهي تأتي بالمرتبة الثانية في مقياس وسرعة المواقع الإلكترونيّة.
بعض شركات استضافة VPS
- فاست كوميت.
- هوست جيتور.
- بلو هوست.
- هوستنجر.
توفر شركات الاستضافة حرّية مطلقة في اختيار أنظمة التشغيل والعمل عليها.
ويعتبر Centos 7 واحداً من أشهر أنظمة تشغيل الويب التي تتميز بمساحة منخفضة وتوجيه الموارد على النّحو المطلوب.
بالتالي تتوالى خيارات استخدام الواجهات الرسوميّة والتي منها واجهة Webmin المجانيّة.
الاستضافات المخصصة
وهي الاستضافات التي تتيح للمستخدم امتلاك خادم حقيقي مع بطاقة Ethernet خاصة وموارد عتاد أخرى منها المعالج و بطاقة رام وأقراص التخزين.
يعيب هذا النوع من الاستضافات الكلفة الباهظة حالما تتم المقارنة مع غيرها.
الخلاصة
- واجهة Webmin مجانيّة على خلاف الواجهات الأخرى المدفوعة.
- توفر لك قيادة حقيقية للعتاد وفروقات مرتفعة في الأداء مقارنة بالاستضافات المشتركة.
- تساعدك في استكمال بيانات الحماية والدخول الآمن بالتعاون مع أنظمة Linux.
المراجع
- الموقع الرسمي webmin.
- Install and Use Webmin on CentOS 7 ^ digitalocean.
- Stop and Disable Firewalld on CentOS 7^ linux size.
- install wget on RHEL/CentOS 6/7/8 using yum ^ cyberciti.
- LAMP Stack on CentOS 7^ hostinger.
- Simple ways to check IP address in CentOS 7^ garbage value.
- install ifconfig on CentOS 7 Linux^ linuxconfig.
- setup network after RHEL/CentOS 7 minimal installation^ lintut.
- dhclient is still running when I choose static IP^ kubuntu.