خادم الويب هو نظام يُستخدم لتقديم مواقع الإنترنت عبر الشبكة. من بين أشهر برامج خوادم الويب هناك Apache، Nginx، وLiteSpeed، ولكن الأكثر استخدامًا على Ubuntu هو Apache.
Ubuntu يُعَد من الأنظمة الخفيفة والمستقرة والمفتوحة المصدر، ولذلك يتم اعتماده من قبل الأفراد والشركات. خصوصاً عند بناء بيئة LAMP (Linux, Apache, MySQL/MariaDB, PHP)، يكون Ubuntu خياراً ممتازاً لإدارة مواقع الإنترنت وتطبيقات الويب.
الفئة المستهدفة لهذا المقال
هذا المقال موجه إلى المبتدئين الذين يقومون بإنشاء خادم ويب لأول مرة. نشرح فيه خطوة بخطوة كيفية إعداد خادم Ubuntu، وتثبيت Apache، وتكوين الاستضافة الافتراضية (Virtual Host) وشهادة SSL، بالإضافة إلى كيفية تحسين الأداء وتعزيز الأمان.
ما الذي ستتعلمه في هذا المقال
كيفية إنشاء خادم ويب على Ubuntu (تثبيت وإعداد Apache الأساسي)
إعداد الاستضافة الافتراضية وتشغيل عدة مواقع في نفس الوقت
يمكنك تنزيل Ubuntu من الموقع الرسمي (https://ubuntu.com/download/server). بعد تحميل ملف ISO، يمكنك إنشاء بيئة افتراضية باستخدام VirtualBox أو VMware أو تثبيته على خادم فعلي أو VPS.
خطوات التثبيت:
إنشاء وسائط التثبيت
استخدام USB (عبر أداة مثل Rufus)
تركيب ملف ISO في جهاز افتراضي
اتباع معالج التثبيت لإعداد النظام
تعيين اللغة (اختر اللغة المناسبة)
تأكيد الاتصال بالشبكة
تعيين اسم المستخدم وكلمة المرور
تثبيت خادم SSH (يمكنك تركيبه لاحقًا)
بعد انتهاء التثبيت، أعد تشغيل الجهاز
تسجيل الدخول وبدء الإعدادات الأولية
الإعدادات الأولية الأساسية
فيما يلي أهم الخطوات التي يجب تنفيذها بعد تثبيت النظام:
تحديث الحزم للنظام
sudo apt update && sudo apt upgrade -y
→ لتثبيت أحدث التحديثات وتصحيح الأمان.
تعيين المنطقة الزمنية
sudo timedatectl set-timezone Asia/Tokyo
→ تعيين الوقت حسب منطقتك (مثال: طوكيو لليابان).
تفعيل جدار الحماية (UFW)
sudo ufw enable
→ لحماية الخادم من الهجمات.
إعداد SSH للإدارة عن بُعد
تأكد أن SSH مفعل: sudo systemctl status ssh
إن لم يكن، فعّله: sudo systemctl enable --now ssh
بعد هذه الإعدادات، سيكون Ubuntu جاهزًا للاستخدام كخادم ويب.
3. تثبيت Apache والإعدادات الأساسية
ما هو Apache؟
Apache (الاسم الكامل: Apache HTTP Server) هو برنامج خادم ويب مفتوح المصدر يتميز بالاستقرار، وسهولة التوسعة، والأمان العالي. يستخدم حوالي 30% من خوادم العالم Apache.
الميزات الرئيسية:
مجاني ومفتوح المصدر
هيكلية الموديولات التي تسهل التوسعة
دعم SSL/TLS لإمكانية تفعيل HTTPS
إدارة استضافة افتراضية (Virtual Host) لتشغيل عدة مواقع بنفس الخادم
تثبيت Apache
يمكن تثبيت Apache على Ubuntu بسهولة باستخدام مدير الحزم apt.
تثبيت Apache
نفذ الأوامر التالية:
sudo apt update
sudo apt install apache2 -y
تأكيد نجاح التثبيت
بعد التثبيت، تحقق من إصدار Apache:
apache2 -v
مثال على المخرجات:
Server version: Apache/2.4.52 (Ubuntu)
Server built: 2023-07-01T12:34:56
إذا ظهرت معلومات الإصدار فهذا يعني أن التثبيت تم بنجاح.
تشغيل/إيقاف/إعادة تشغيل Apache
يمكنك إدارة Apache باستخدام أوامر systemctl.
تشغيل Apache
sudo systemctl start apache2
تفعيل التشغيل التلقائي عند الإقلاع
sudo systemctl enable apache2
التحقق من حالة Apache
sudo systemctl status apache2
إذا كان يعمل، ستظهر رسالة تفيد بأن الخدمة نشطة (active).
إعادة تشغيل/إيقاف Apache
لإعادة تشغيل Apache بعد تغيير الإعدادات:
sudo systemctl restart apache2
لإيقاف الخدمة مؤقتًا:
sudo systemctl stop apache2
التحقق من عمل Apache
يمكنك التأكد من عمل Apache من خلال الوصول إلى عنوان الـ IP الخاص بالخادم.
1. الحصول على عنوان الـ IP الخاص بالخادم
hostname -I
أو:
curl ifconfig.me
2. التحقق باستخدام متصفح الويب
في شريط عنوان المتصفح أدخل:
http://<عنوان-IP-الخادم>/
أو على البيئة المحلية:
http://localhost/
يجب أن تظهر صفحة Apache الافتراضية (/var/www/html/index.html). مثال لصفحة العرض الافتراضية:
Apache2 Ubuntu Default Page
It works!
إذا رأيت هذه الرسالة فهذا يعني أن Apache يعمل بشكل صحيح.
إعداد جدار الحماية
على Ubuntu يمكنك استخدام UFW (Uncomplicated Firewall) لإدارة الجدار الناري.
قد يكون الوصول عبر HTTP (منفذ 80) أو HTTPS (منفذ 443) محجوبًا افتراضيًا بعد تثبيت Apache.
تفعيل قواعد الجدار الناري لـ Apache
sudo ufw allow 'Apache'
للسماح أيضًا بالوصول لـ HTTPS:
sudo ufw allow 'Apache Full'
التحقق من حالة الجدار الناري
sudo ufw status
إذا رأيت أن Apache مسموح به فهذا يعني أن الوصول إلى الخادم ممكن من الإنترنت.
الملخص
حتى الآن، قمنا بـ تثبيت Apache على Ubuntu وأكملنا الإعدادات الأساسية.
النقاط الرئيسية:
طريقة تثبيت Apache
إعداد التشغيل التلقائي والتحقق من العمل
الوصول عبر المتصفح للتحقق من العمل
إعداد الجدار الناري (UFW)
نظرة عامة على ملفات الإعداد الأساسية لـ Apache
4. إعداد الاستضافة الافتراضية (إدارة عدة مواقع)
ما هي الاستضافة الافتراضية (Virtual Host)؟
الاستضافة الافتراضية تتيح لك تشغيل عدة نطاقات (أو نطاقات فرعية) على نفس خادم Apache.
مثلاً يمكنك استضافة example.com وtest.com على نفس الجهاز.
هناك نوعان رئيسيان:
استضافة افتراضية بالاسم (Name-based Virtual Host)
تشغيل عدة مواقع باستخدام نفس عنوان الـ IP
هذا هو الأكثر استخدامًا في استضافة المواقع
استضافة افتراضية بالـ IP (IP-based Virtual Host)
كل موقع على عنوان IP مختلف
يتطلب وجود أكثر من واجهة شبكية على الخادم
عادةً ما يُستخدم النوع الأول (Name-based Virtual Host).
echo "<h1>Welcome to example.com</h1>" | sudo tee /var/www/example.com/public_html/index.html
echo "<h1>Welcome to test.com</h1>" | sudo tee /var/www/test.com/public_html/index.html
4. إنشاء ملف إعداد الاستضافة الافتراضية
ملفات إعداد الاستضافة الافتراضية تُنشأ داخل /etc/apache2/sites-available/.
إذا ظهرت رسالة Syntax OK، كل شيء صحيح.
أعد تشغيل Apache:
sudo systemctl restart apache2
6. التحقق من العمل محليًا (تحرير ملف hosts)
لتجربة المواقع الجديدة محليًا، عدل ملف hosts على جهازك:
sudo nano /etc/hosts
أضف:
127.0.0.1 example.com
127.0.0.1 test.com
بعد الحفظ، افتح المتصفح وادخل http://example.com/ وhttp://test.com/. إذا ظهرت صفحة الترحيب الخاصة بكل موقع فهذا يعني نجاح الإعداد.
7. استكشاف المشاكل (Troubleshooting)
إذا لم تعمل الاستضافة الافتراضية:
1. التحقق من سجل الأخطاء في Apache
sudo tail -f /var/log/apache2/error.log
2. التأكد من تفعيل ملفات الإعداد
ls /etc/apache2/sites-enabled/
يجب أن تظهر ملفات .conf الخاصة بك.
3. التأكد من إعدادات المنفذ
تحقق من ملف /etc/apache2/ports.conf:
sudo nano /etc/apache2/ports.conf
يجب أن يتضمن:
Listen 80
الملخص
في هذا القسم، شرحنا كيفية إعداد الاستضافة الافتراضية على Apache باستخدام Ubuntu.
النقاط الرئيسية:
مفهوم الاستضافة الافتراضية واستخداماتها
إنشاء مجلدات الاستضافة الافتراضية
إعداد وتفعيل ملفات الضبط
التحقق من العمل في البيئة المحلية
استكشاف الأخطاء وإصلاحها
5. تفعيل SSL/TLS (تمكين HTTPS)
ما هو SSL/TLS؟
SSL (طبقة المقابس الآمنة) وTLS (أمان طبقة النقل) هي تقنيات تشفير لحماية الاتصال عبر الإنترنت.
فوائد استخدام SSL/TLS
✅ تشفير الاتصالات (تقليل خطر التجسس أو التلاعب بالبيانات)
✅ تحسين ترتيب الموقع في نتائج Google (المواقع التي تدعم HTTPS مفضلة في البحث)
✅ تجنب تحذيرات المتصفح (المواقع غير المشفرة تُعرض كـ “غير آمنة”)
✅ حماية بيانات الدفع وتسجيل الدخول حالياً يُنصح باستخدام TLS 1.2 أو 1.3. النسخ الأقدم من SSL غير موصى بها.
الحصول على شهادة SSL مجانية باستخدام Let’s Encrypt
Let’s Encrypt هي جهة إصدار شهادات مجانية (CA). يمكنك استخدام certbot للحصول على شهادة وتفعيلها تلقائياً في Apache.
دعونا نستعرض النقاط الأساسية التي تم شرحها في كل قسم:
القسم
المحتوى
1. المقدمة
مفاهيم أساسية حول خوادم الويب Ubuntu وهدف هذا المقال
2. تثبيت Ubuntu والإعدادات الأولية
تثبيت النظام، التحديثات، إعداد جدار الحماية
3. تثبيت Apache والإعدادات الأساسية
تثبيت Apache، التشغيل، والتحقق من العمل
4. إعداد الاستضافة الافتراضية
إدارة عدة مواقع على نفس الخادم
5. تفعيل SSL/TLS
تمكين HTTPS باستخدام Let’s Encrypt
6. تعزيز أمان الخادم
إعداد جدار الحماية، حماية SSH، وتأمين Apache
7. تحسين الأداء
استخدام الكاش، الضغط، وضبط Apache للأداء
8. استكشاف الأخطاء وحل المشاكل
حل مشاكل Apache، الشهادة، وتحسين الأداء
الخطوات التالية
بعد إكمال إعداد خادم الويب على Ubuntu، يمكنك تطوير مهاراتك بشكل أكبر من خلال دراسة تقنيات متقدمة مثل: ✅ تثبيت WordPress أو تطبيقات PHP ✅ إعداد قواعد بيانات (MySQL / MariaDB) ✅ استخدام Nginx كـ Reverse Proxy مع Apache ✅ بناء بيئة قابلة للتوسع تلقائياً (AWS، GCP، Azure) ✅ إدارة السجلات ومراقبة الخادم (مثل fail2ban أو logwatch)
الأسئلة الشائعة (FAQ)
س1: أيهما أختار على Ubuntu، Nginx أم Apache؟
ج1: إذا كان موقعك يركز على الملفات الثابتة (صور، CSS، JS)، فـ Nginx خيار ممتاز. إذا كان لديك تطبيقات PHP أو مواقع ديناميكية، Apache أفضل.
يمكن الجمع بين الاثنين (Nginx كـ Reverse Proxy أمام Apache).
س2: هل يمكن تحديث شهادة SSL تلقائيًا؟
ج2: نعم، باستخدام Certbot يمكنك جدولة التحديث التلقائي بسهولة: sudo certbot renew --dry-run مع إعداد cron أو systemd.
س3: كيف أعزز أمان خادمي بشكل أكبر؟
ج3: استخدم Fail2Ban لمنع الهجمات، أخفِ معلومات إصدار Apache، وفعّل فقط الموديولات الضرورية.
إعداد خادم ويب على Ubuntu يتطلب عدة خطوات من الإعداد الأساسي حتى التحسينات المتقدمة، ولكن بفهم كل مرحلة يمكنك بناء بيئة قوية وآمنة وفعالة. 🚀 استخدم هذا الدليل لبناء وتشغيل خادم ويب آمن وسريع، وطور مهاراتك التقنية بثقة! 🚀