Titolo del modulo: dgt_sys04 – Apache Web Server
Panoramica:
Questo modulo, parte del programma “Amministrazione Sistemi Linux”, è dedicato alla configurazione e alla gestione dell’Apache HTTP Server. È rivolto agli amministratori di sistema che vogliono rafforzare le proprie competenze sui web server, e tratta come un web server Apache viene installato, ottimizzato e messo in sicurezza.
Prima viene la teoria: l’architettura di Apache, le sue direttive, i suoi moduli e il percorso delle richieste al loro interno. Nei laboratori gestirai poi il server interamente in linguaggio naturale: chiederai alla macchina di installare Apache, creare un virtual host o abilitare TLS, leggerai i file di configurazione che scrive e li confronterai riga per riga con quanto hai imparato, prima che qualsiasi cosa vada in produzione.
Obiettivi:
- Comprendere l’architettura e i componenti dell’Apache Web Server.
- Imparare come Apache viene installato e configurato sui sistemi Linux, e come guidare la macchina a farlo in linguaggio naturale.
- Conoscere direttive di configurazione e moduli al punto da saper rivedere e correggere la configurazione generata dalla macchina.
- Specificare, verificare e diagnosticare i virtual host per ospitare più siti web.
- Riconoscere le best practice di sicurezza e controllare che la macchina le abbia effettivamente applicate.
- Comprendere le tecniche di tuning delle prestazioni e valutare le modifiche di tuning proposte dalla macchina.
Programma:
- Introduzione all’Apache Web Server
- Storia e panoramica dell’Apache HTTP Server
- Confronto con altri web server Nginx, IIS
-
Caratteristiche principali e vantaggi
-
Installazione e configurazione di base
- Installazione su diverse distribuzioni Linux e relative differenze
- Comprendere la struttura delle directory
-
Configurazione delle impostazioni di base del server
-
Direttive di configurazione e moduli
- Le direttive principali: ServerRoot, DocumentRoot, Listen, ecc.
- Abilitazione e configurazione dei moduli mod_ssl, mod_rewrite
-
Personalizzazione del logging per un monitoraggio migliore
-
Virtual hosting
- Configurazione di virtual host name-based
- Configurazione del virtual hosting IP-based
-
Gestione di più domini con SSL/TLS
-
Miglioramenti di sicurezza
- Implementare HTTPS e proteggere le comunicazioni
- Configurazione di firewall e access control list ACL
-
Applicazione di security header e best practice
-
Ottimizzazione delle prestazioni
- Tuning di Apache per scenari ad alto traffico
- Sfruttare i meccanismi di caching mod_cache, mod_expires
-
Configurazioni di load balancing e reverse proxy
-
Monitoraggio e troubleshooting
- Strumenti e tecniche per monitorare le prestazioni del server
- Problemi comuni e metodi di troubleshooting
-
Analisi dei log e debugging
-
Laboratori e progetti in linguaggio naturale
- Scenari reali in cui descrivi l’obiettivo alla macchina e ne verifichi il risultato
- Chiedere alla macchina di effettuare il deploy di un’applicazione di esempio su Apache, quindi rivederne la configurazione
- Istruire la macchina a mettere in sicurezza e ottimizzare un ambiente web di test, e verificare che le modifiche funzionino davvero
Risorse:
- Accesso ai materiali del modulo, inclusi appunti delle lezioni ed esempi di configurazione.
- Interazione con le risorse della community tramite il repository GitHub: Garanti-Del-Talento/gdt_academy/dgt_sys04__apache_web_server
- Il repository contiene file di configurazione, script e documentazione aggiuntivi da confrontare con ciò che la macchina produce durante gli esercizi.
- Accesso a forum e canali di supporto per l’apprendimento collaborativo.
Prerequisiti:
- Conoscenza di base dei sistemi operativi Linux
- Familiarità con l’interfaccia a riga di comando CLI, sufficiente a leggere e comprendere i comandi eseguiti dalla macchina
- Comprensione dei concetti di networking
Certificazione:
Al completamento del modulo, i partecipanti riceveranno un certificato che attesta la loro competenza nell’amministrazione dell’Apache Web Server nell’ambito del programma “Amministrazione Sistemi Linux”.
Gli studenti possono caricare i propri esercizi nel Progetto Git dell’Academy DevOps & SRE. Per questo modulo, crea una cartella con il tuo username come nome nella seguente sottocartella: https://github.com/Garanti-Del-Talento/gdt_academy
