Programme détaillé — 3 journées · 21 heures
1Jour 1 — Fondamentaux du système & accès distant
09h00 – 10h30
Installation & découverte de la structure du serveur
- Rôle d'un serveur headless — importation VM et première connexion console
- Arborescence unifiée Linux : /home, /etc, /var, /tmp, /usr, /opt
- Chemins absolus et relatifs — premières commandes de navigation
10h45 – 12h30
Manipulation des fichiers et dossiers
- Création, copie, déplacement, suppression de fichiers et répertoires
- Consultation et édition avec nano — arborescence personnelle de projets
- Fichiers cachés et liens symboliques
13h30 – 15h00
Permissions & sécurité des accès
- Droits lecture/écriture/exécution — trois classes d'utilisateurs
- chmod en notation symbolique et octale (755, 644, 600)
- chown — sécurisation fichier de config, répertoire public, clé privée
15h15 – 17h00
Accès distant sécurisé — SSH
- Installation et activation du serveur SSH
- Génération d'une paire de clés asymétriques Ed25519
- Désactivation de l'authentification par mot de passe
- Changement du port d'écoute — refus de l'accès root à distance
2Jour 2 — Services, logs, réseau & sécurité
09h00 – 10h30
Gestion des paquets & services applicatifs
- Mise à jour système — installation Nginx
- Cycle de vie des services avec systemd (start, stop, enable)
- Page d'accueil personnalisée — vérification depuis le navigateur hôte
10h45 – 12h30
Lecture & filtrage des journaux (logs)
- Localisation des logs système et applicatifs
- Consultation temps réel avec tail -f — recherche avec grep et pipe
- Simulation panne (erreur 404) et résolution par les traces
13h30 – 15h00
Diagnostic réseau & gestion des ports
- Interfaces réseau, adresses IP, ping
- Ports ouverts avec ss -tulpn — ports standards SSH/HTTP/HTTPS
- Second virtualhost Nginx sur port personnalisé (8080)
15h15 – 17h00
Pare-feu & protection contre les intrusions
- ufw — règles restrictives : SSH, HTTP, HTTPS uniquement
- Fail2ban — blocage automatique des tentatives de force brute SSH
- Tests de résistance et validation après redémarrage
3Jour 3 — Conteneurs, automatisation & projet de synthèse
09h00 – 10h30
Introduction aux conteneurs avec Docker
- Isolation, portabilité, légèreté — installation Docker
- Commandes fondamentales : images, conteneurs, logs, arrêt, suppression
- Conteneur Nginx exposé sur port dédié
10h45 – 12h30
Déploiement d'une application multi-conteneurs
- Docker Compose — écriture docker-compose.yml (web + MySQL)
- Volumes persistants — lancement et arrêt en une commande
- Vérification depuis le navigateur
13h30 – 15h00
Automatisation & scripts de sauvegarde
- Script bash : archivage logs et sauvegarde données conteneurs
- Planification avec cron — journal de traçabilité
- Validation du bon fonctionnement
15h15 – 17h00
Projet de synthèse — Machine vierge en autonomie
- SSH avec clé + durcissement pare-feu depuis zéro
- Application conteneurisée accessible de l'extérieur
- Sauvegarde automatique opérationnelle
- Correction collective et retour sur bonnes pratiques
Critères de réussite
- Serveur accessible en SSH sans mot de passe
- Application web opérationnelle sur le port autorisé
- Pare-feu actif et persistant après redémarrage
- Tâche cron générant des traces vérifiables
- Capacité à consulter les logs pour diagnostiquer une panne