Labs
Des labs concrets en 16 étapes, déclinés en trois niveaux, avec corrigé détaillé — et, pour beaucoup, un vrai terminal et une validation automatique.
60 résultat(s)
Audit de durcissement Linux : SUID, fichiers sensibles et permissions
Menez un premier audit de durcissement sur un serveur hérité : établissez la référence SUID, supprimez un binaire SUID dangereux et corrigez les permissions de fichiers sensibles.
Break-Fix : l'application n'atteint plus son API interne
Après une migration, le client applicatif affiche « Connection timed out ». L'API tourne pourtant bien. Remontez les couches, trouvez les deux erreurs et réparez.
Break-Fix : la boutique est hors ligne après un changement de configuration
Un collègue a modifié la configuration du reverse proxy de la boutique juste avant de partir. NGINX refuse de démarrer. Remettez le site en ligne.
Break-Fix : le catalogue produits renvoie une erreur 500
Après une réinstallation du serveur, l'application répond « internal error » à toutes les requêtes. Lisez les journaux, corrigez l'environnement, sans redémarrer l'application ni la lancer en root.
Break-Fix : le rapport nocturne n'est plus produit
Le métier signale que le rapport quotidien n'arrive plus depuis la migration du script depuis un poste Windows. La tâche cron est pourtant présente. Trouvez pourquoi rien ne s'exécute.
Comprendre une API REST avec curl (statuts, en-têtes, méthodes)
Explorez une API d'inventaire réseau comme le ferait un ingénieur d'exploitation : codes de statut, en-têtes, authentification par clé, création d'une ressource et redirections.
Concevoir un plan d'adressage IPv4 en VLSM
Découpez le bloc 10.20.0.0/23 d'un site en sous-réseaux de tailles variables (VLSM) pour quatre VLAN, sans gaspillage ni chevauchement.
Construire des KPI de ventes avec le SQL analytique
Transformez une table de ventes brute en indicateurs prêts pour un tableau de bord : chiffre d'affaires mensuel, cumul et part de chaque région, grâce aux fonctions de fenêtre.
Construire la matrice de flux d'une application trois tiers
Remplacez une règle « any-any » héritée par une matrice de flux précise et justifiée pour l'application de boutique en ligne : chaque flux a une source, une destination, un protocole, un port et une raison.
Documenter une architecture avec le modèle C4 et des ADR
Produisez la documentation d'architecture d'une application de prise de rendez-vous : diagrammes de contexte et de conteneurs (C4), et deux décisions d'architecture tracées (ADR).
Déclarer des postes PJSIP et un plan de numérotation Asterisk
Enregistrez deux téléphones IP sur Asterisk (PJSIP), faites-les s'appeler et ajoutez une messagerie vocale.
Exposer des métriques métier au format Prometheus
Rendez observable une tâche de sauvegarde : écrivez un script qui publie son horodatage de succès et sa taille au format d'exposition Prometheus, via le textfile collector de node_exporter.
Fondamentaux SQL : schéma, jointures, agrégats et vues
Sur la base d'une boutique en ligne, créez une table avec contraintes, écrivez des jointures et des agrégats, puis exposez un indicateur métier sous forme de vue.
Git pour l'infrastructure : commits, branches, fusion et version
Versionnez la configuration d'un serveur comme du code : dépôt, fichier .gitignore protégeant les secrets, branche de fonctionnalité, fusion et étiquette de version.
Publier un site avec un virtual host NGINX
Configurez un virtual host NGINX dédié (nom, racine, journaux) à côté du site par défaut, testez la configuration et servez votre page.
Une chaîne batch fiable : dépendances, codes retour, verrou et journal
Orchestrez les trois étapes de l'intégration comptable nocturne (extraction, transformation, chargement) : arrêt à la première erreur, code retour propagé, exécution unique et journal exploitable par l'équipe de production.
Utilisateurs, groupes et permissions d'un répertoire d'équipe
Créez les comptes d'une équipe DevOps, un répertoire partagé avec héritage de groupe (setgid) et un accès en lecture seule pour un auditeur via les ACL.
Écrire une politique AWS IAM au moindre privilège
Remplacez la politique « AmazonS3FullAccess » d'une application d'export par une politique précise : lecture d'un préfixe, écriture d'un autre, rien d'autre. Un simulateur d'évaluation vérifie vos décisions.
Évaluer un modèle de classification (précision, rappel, F1)
Un modèle détecte les incidents critiques à partir des tickets. Calculez sa matrice de confusion et ses métriques avec Python, puis interprétez-les pour décider s'il peut être mis en production.
Ansible : rôle idempotent, handlers, variables et Vault
Transformez une procédure manuelle de déploiement NGINX en rôle Ansible réutilisable, idempotent, testé et paramétrable par environnement, avec secrets chiffrés.
Authentification par jetons JWT avec rotation des refresh tokens
Implémentez une authentification web robuste : jeton d'accès court en cookie httpOnly, refresh token opaque avec rotation et détection de réutilisation, révocation et protection CSRF.
Automatiser une sauvegarde avec cron et logrotate
Écrivez un script de sauvegarde robuste de /etc, planifiez-le avec cron et maîtrisez ses journaux avec logrotate.
Break-Fix : fusion bloquée et pipeline rouge avant la mise en production
La fusion du correctif `hotfix` dans `main` est restée en plein conflit et les tests échouent. Terminez proprement la fusion en respectant les deux exigences.
Break-Fix : l'application ne joint plus sa base après la migration
La base de données a été migrée vers une nouvelle instance. L'application échoue avec « could not connect ». Suivez la méthode de diagnostic d'un flux (résolution, routage, écoute, applicatif), réparez la configuration et mettez la matrice de flux à jour.