100%
GRIMOIRE
الكتابمدونة البيبيمجلدات التوليفالأساس الحديدي
FRENAR
← السابقالتالي →
RATIO
الأساس الحديدي · دعامة الدرس · الأسبوع 24
◆◆◆
خادم الويب
HTTP/HTTPS والشهادات
الأسبوع 24 من 26 · الوحدة 9 — الويب وقواعد البيانات
8 ساعات نظرية · 27 ساعة تطبيقية
◆ الأهداف التعليمية للأسبوع

1. فهم بروتوكول HTTP/HTTPS وبنية عميل-خادم الويب
2. تثبيت وإعداد خادم ويب (Apache أو Nginx)
3. استضافة موقع بسيط وتحليله عبر DNS الأسبوع 21
4. إعداد HTTPS بشهادة موقَّعة ذاتيًا
5. إعداد مضيفين افتراضيين لاستضافة عدة مواقع على نفس الخادم

◆◆◆
⚠ تنبيه — ديمومة الإصدارات المذكورة

يُذكَر Apache وNginx كخادمي ويب مرجعيين. توجد حلول أخرى. تختلف أرقام الإصدارات ومواقع ملفات الإعداد بين توزيعات Linux وبين الإصدارات. يكيّف المكوِّن مع البيئة المتوفرة.

Amine RAITI · مهندس بنية تحتية وSRE
وثيقة عمومية · CC BY-NC-SA 4.0 · AI Powered by Amine
عملية ديندون
RATIO
خطة الدرس · 8 ساعات
الخيط النظري الناظم
24.1 · بروتوكول HTTP/HTTPS وبنية الويب3 ساعات
— HTTP: بروتوكول الطبقة 7 (تطبيق OSI، صلة بالأسبوع 17)، تبادل طلب/إجابة، طرق GET/POST، أكواد الحالة
— HTTPS: HTTP بتشفير TLS — يُشفَّر المحتوى، وتُتحقَّق هوية الخادم بشهادة
— بنية عميل-خادم الويب: متصفح (عميل) ↔ خادم ويب (Apache/Nginx) ↔ تطبيق ↔ قاعدة بيانات (صلة مسبقة بالأسبوع 25)
24.2 · شهادات SSL/TLSساعتان
— دور الشهادة: إثبات هوية الخادم وإقامة قناة مشفَّرة
— شهادة موقَّعة ذاتيًا (التكوين) مقابل شهادة سلطة معترف بها (الإنتاج)
— سلسلة الثقة: CA الجذر ← CA الوسيط ← شهادة الخادم
24.3 · المضيفون الافتراضيون (Virtual Hosts)ساعتان
— استضافة عدة مواقع على نفس الخادم بأسماء نطاقات مختلفة
— التمييز بالاسم (Name-based Virtual Hosting) — يقرأ الخادم ترويسة HTTP Host لتحديد الموقع الواجب خدمته
— صلة بـDNS: يحتاج كل Virtual Host تسجيل A في نطاق DNS للأسبوع 21
24.4 · التأمين الأساسي لخادم الويبساعة
— تعطيل إظهار إصدار الخادم في ترويسات HTTP
— تقييد الوصول إلى بعض الأدلة
— سجلات الوصول والخطأ: أين نجدها وكيف نقرأها
RATIO
التمرين التطبيقي 1 · تثبيت وإعداد خادم الويب · 13 ساعة

المعدات: VM بـLinux (الأسبوع 8)، DNS عامل منذ الأسبوع 21.

(ساعتان) تثبيت خادم الويب، تشغيل الخدمة، التحقق عبر متصفح محليًا (http://localhost).
(ساعتان) إنشاء موقع بسيط (صفحة HTML مُوفَّرة)، إعداد Virtual Host الافتراضي لخدمة هذا الموقع، إضافة تسجيل A في DNS الأسبوع 21 لتحليل اسم الموقع من جهاز آخر.
(3 ساعات) إعداد HTTPS: توليد شهادة موقَّعة ذاتيًا، إعداد Virtual Host لـHTTPS، اختبار الاتصال المشفَّر (قبول الشهادة الموقَّعة ذاتيًا في المتصفح).
(3 ساعات) إنشاء Virtual Host ثانٍ لموقع افتراضي ثانٍ على نفس الخادم، إضافة التسجيل الثاني لـDNS، التحقق من أن الموقعين متاحان بشكل مستقل.
(ساعتان) إعداد إعادة التوجيه التلقائي HTTP ← HTTPS، اختبار إعادة التوجيه من متصفح.
(ساعة) استكشاف سجلات الوصول والخطأ، تحديد طلب ناجح وخطأ 404.
تصحيح التمرين التطبيقي 1

التحقق من التحليل DNS: من جهاز عميل على نفس الشبكة، تحليل اسم الموقع عبر DNS الأسبوع 21 — يجب أن تُرجع الإجابة عنوان IP لخادم الويب. دون هذه الخطوة، لا يستطيع المتصفح إيجاد الخادم باسمه.

خطأ شائع لـVirtual Hosts: نسيان إنشاء تسجيل DNS منفصل لكل Virtual Host — يجب أن يُحلَّل اسما النطاق إلى نفس IP الخادم، لكن يجب أن يمتلك كل منهما تسجيل A خاصًا به في نطاق DNS.

RATIO
التمرين التطبيقي 2 · تأمين وتشخيص الويب · 14 ساعة

المعدات: خادم الويب المُعدّ في التمرين 1، Wireshark.

(3 ساعات) التقاط مقارن HTTP مقابل HTTPS بـWireshark: ملاحظة أن محتوى HTTP مقروء بوضوح، وأن محتوى HTTPS مشفَّر — برهان ملموس على أهمية HTTPS (صلة بالأسبوع 15 — الأمن).
(3 ساعات) تأمين خادم الويب: تعطيل الوحدات غير المستخدَمة، تقييد الوصول إلى دليل بعنوان IP، إعداد ترويسات أمان HTTP.
(4 ساعات) سيناريو نشر تطبيق ويب بسيط (تطبيق PHP مُوفَّر) على الخادم، الاتصال بقاعدة البيانات التي ستُنشر في الأسبوع 25 (تحضير إعداد الاتصال).
(ساعتان) تشخيص أعطال ويب محاكاة: 403 Forbidden (الصلاحيات)، 502 Bad Gateway (خدمة تطبيقية غير قابلة للوصول)، شهادة منتهية الصلاحية — تحديد السبب في السجلات والتصحيح.
(ساعتان) توثيق خادم الويب المنشور: Virtual Hosts، HTTPS، الوحدات النشطة، التقييدات.
تصحيح التمرين التطبيقي 2

أكواد الخطأ وسببها: 403 Forbidden = صلاحيات الدليل أو الملف تمنع خادم الويب من قراءته (التحقق من صلاحيات UNIX، صلة بالأسبوع 8)؛ 502 Bad Gateway = الخدمة التطبيقية الخلفية (PHP-FPM أو ما يعادلها) غير نشطة أو لا تستمع على المقبس (socket) الصحيح؛ شهادة منتهية الصلاحية = إعادة إنشاء الشهادة الموقَّعة ذاتيًا أو تمديد مدة صلاحيتها.

◆ بطاقة تجميع — التقييم الذاتي للأسبوع 24
1. أستطيع شرح عمل HTTP/HTTPS وطرق GET/POST.
2. أستطيع تثبيت وإعداد خادم ويب (Apache أو Nginx).
3. أستطيع إعداد HTTPS بشهادة موقَّعة ذاتيًا.
4. أستطيع إنشاء عدة Virtual Hosts على نفس الخادم.
5. أستطيع إعداد إعادة التوجيه HTTP ← HTTPS.
6. أستطيع قراءة وتفسير سجلات الوصول والخطأ لخادم الويب.
7. أستطيع تشخيص أخطاء HTTP الشائعة (403، 404، 502).
8. أستطيع شرح فائدة HTTPS مقارنة بـHTTP الواضح.
← السابقالتالي →