Aller au contenu
Administration Linux medium

RHCSA : compétences essentielles

26 min de lecture

Cette page recense les compétences officielles de l’examen RHCSA (EX200), telles que publiées par Red Hat dans les study points de la certification. Pour chaque bloc, elle traduit ces compétences en savoir-faire concrets à démontrer sur RHEL 10.

Il ne s’agit pas d’une liste fermée de commandes à mémoriser. Red Hat publie des objectifs de compétence, pas une checklist d’outils. L’objectif est de vous aider à identifier ce que vous devez être capable de faire le jour de l’examen — un examen performance-based où chaque tâche doit produire un résultat fonctionnel sur un système RHEL réel.

Red Hat ne publie pas de pondération chiffrée par bloc. Les blocs ci-dessous correspondent aux catégories d’objectifs publiées sur la page officielle EX200.

BlocCe que ça couvre
Understand and use essential toolsShell, redirections, grep, regex, SSH, fichiers, liens, permissions, documentation
Create simple shell scriptsVariables, conditions, boucles, codes retour
Operate running systemsBoot targets, interruption boot, processus, journaux, planification, services, VMs
Configure local storagePartitions, LVM, swap, montages persistants
Create and configure file systemsFilesystems, attributs, permissions, ACL, chiffrement, NFS
Deploy, configure, and maintain systemsInstallation logicielle, dépôts, services de base, maintenance
Manage users and groupsComptes, groupes, droits, changements d’utilisateur
Manage securityFirewall, SELinux, SSH par clé
Perform basic container managementOpérations conteneur de base

Ce bloc couvre la maîtrise du shell, la manipulation de fichiers, les permissions Unix standard et l’utilisation de la documentation intégrée.

  1. Accéder à un shell et exécuter des commandes avec la syntaxe correcte
  2. Utiliser les redirections d’entrée-sortie (>, >>, |, 2>, etc.)
  3. Utiliser grep et les expressions régulières pour analyser du texte
  4. Accéder à des systèmes distants via SSH
  5. Se connecter et changer d’utilisateur dans des cibles multi-utilisateurs
  6. Archiver, compresser, décompresser des fichiers avec tar, gzip, bzip2
  7. Créer et éditer des fichiers texte
  8. Créer, supprimer, copier et déplacer des fichiers et répertoires
  9. Créer des liens physiques et symboliques
  10. Lister, définir et modifier les permissions standard ugo/rwx
  11. Localiser, lire et utiliser la documentation système — man, info, /usr/share/doc

Shell et redirections :

  • Enchaîner des commandes avec des pipes sans hésitation
  • Rediriger stdout, stderr ou les deux vers un fichier — savoir la différence entre écraser et ajouter
  • Utiliser tee pour afficher et enregistrer simultanément
  • Travailler proprement sans erreur de syntaxe — en examen, une erreur de redirection peut produire un résultat incomplet

Grep et expressions régulières :

  • Rechercher un motif dans un fichier ou récursivement dans une arborescence
  • Utiliser les regex de base et étendues : ancres (^, $), classes de caractères, alternation
  • Exclure des lignes (commentaires, lignes vides)
  • Combiner grep avec d’autres outils (awk, cut, sort, uniq) pour extraire et formater des données

SSH :

  • Se connecter à un système distant avec un utilisateur spécifique
  • Utiliser scp et rsync pour transférer des fichiers de façon sécurisée
  • Travailler sur un système distant comme si c’était le système local

Fichiers, liens, archives :

  • Créer, copier, déplacer et supprimer des fichiers et répertoires rapidement
  • Comprendre la différence entre lien physique et lien symbolique — savoir quand utiliser l’un ou l’autre
  • Créer une archive tar compressée (gzip ou bzip2) et l’extraire dans un répertoire cible
  • Lister le contenu d’une archive sans l’extraire

Permissions :

  • Lire et interpréter les permissions affichées par ls -l
  • Modifier les permissions en notation symbolique et octale
  • Comprendre les bits spéciaux : SUID, SGID, sticky bit
  • Appliquer un umask adapté
  • Modifier le propriétaire et le groupe d’un fichier ou d’une arborescence

Documentation :

  • Trouver rapidement une option dans une page man (navigation, recherche par /)
  • Identifier la bonne section man quand plusieurs existent
  • Consulter /usr/share/doc pour trouver des exemples de configuration
  • Confondre > (écrase) et >> (ajoute) — un candidat peut écraser un fichier de configuration par erreur
  • Oublier les guillemets autour des regex dans grep — le shell interprète les caractères spéciaux
  • Ne pas connaître man -k pour rechercher une commande par mot-clé
  • Appliquer chmod -R de façon trop large sans réfléchir aux conséquences sur les fichiers et répertoires

Ce bloc est dédié aux scripts shell simples. Il ne s’agit pas de développement avancé, mais de la capacité à automatiser une tâche d’administration avec un script Bash fonctionnel.

  1. Créer des scripts shell simples avec des conditions, des boucles et un traitement des codes de retour
  • Écrire un script Bash avec un shebang (#!/bin/bash) et les bonnes permissions d’exécution
  • Utiliser des variables (affectation, expansion, variables spéciales $?, $1, $#)
  • Écrire des conditions : if/elif/else, tests sur des fichiers (-f, -d, -e), sur des chaînes, sur des valeurs numériques
  • Écrire des boucles : for, while, itération sur une liste ou sur la sortie d’une commande
  • Gérer un code de retour : tester le succès ou l’échec d’une commande et réagir en conséquence
  • Lire et modifier un petit script existant sans se perdre
  • Rendre le script exécutable et le lancer correctement
  • Oublier le shebang ou les permissions d’exécution — le script ne s’exécute pas
  • Confondre = (comparaison de chaînes dans [[ ]]) et -eq (comparaison numérique)
  • Ne pas tester le code retour de la commande précédente alors que le script doit réagir à un échec
  • Écrire des scripts sans gestion d’erreur minimale — en examen, un script qui crashe silencieusement ne marque pas de point

Ce bloc couvre la gestion opérationnelle d’un système en fonctionnement : boot, processus, journaux, planification, services et machines virtuelles.

  1. Démarrer, redémarrer et arrêter un système normalement
  2. Démarrer en différents targets manuellement pour dépanner
  3. Interrompre la séquence de boot pour accéder à un système (récupération)
  4. Identifier les processus gourmands en ressources et les gérer
  5. Localiser et interpréter les fichiers journaux et les journaux système
  6. Planifier l’exécution de tâches (cron, at)
  7. Vérifier l’état des services réseau au démarrage
  8. Configurer un système pour démarrer automatiquement des services
  9. Démarrer et arrêter des machines virtuelles

Boot et targets :

  • Connaître les targets systemd principales : multi-user.target, graphical.target, rescue.target, emergency.target
  • Changer la target par défaut de façon persistante
  • Basculer vers une target à chaud pour diagnostiquer un problème
  • Interrompre le boot via GRUB2 : éditer l’entrée de démarrage pour ajouter un paramètre noyau
  • Exécuter la procédure rd.break pour réinitialiser le mot de passe root — incluant le remount en écriture, le chroot, le changement de mot de passe et le touch /.autorelabel obligatoire pour SELinux

Processus :

  • Lister les processus et identifier celui qui consomme le plus de CPU ou de mémoire
  • Envoyer un signal à un processus : arrêt gracieux (SIGTERM), arrêt forcé (SIGKILL)
  • Modifier la priorité d’un processus en cours d’exécution (nice/renice)
  • Gérer les tâches en arrière-plan du shell (bg, fg, jobs, nohup)

Journaux :

  • Consulter les journaux d’un service spécifique avec journalctl
  • Rechercher dans les journaux par date, par priorité ou par unité
  • Configurer la persistance des journaux (/etc/systemd/journald.conf) pour conserver les logs entre les redémarrages
  • Consulter les logs du boot précédent (possible uniquement si la persistance est configurée)

Planification :

  • Créer une tâche récurrente avec cron — maîtriser la syntaxe des 5 champs
  • Créer une tâche unique différée avec at
  • Vérifier qu’une tâche planifiée est bien en place
  • Connaître les répertoires /etc/cron.d/, /etc/cron.daily/

Services :

  • Démarrer, arrêter, redémarrer un service avec systemctl
  • Activer un service au démarrage avec systemctl enable
  • Vérifier qu’un service est actif et activé — comprendre la différence
  • Diagnostiquer un service en état failed en lisant les journaux

Machines virtuelles :

  • Démarrer et arrêter une VM avec les outils libvirt (virsh)
  • Lister les VMs existantes
  • L’objectif est la manipulation de base, pas la création complète de VMs
  • Oublier touch /.autorelabel après la procédure rd.break — SELinux bloque le système au prochain boot
  • Confondre systemctl enable (persistant) et systemctl start (immédiat) — les deux sont nécessaires, ou utiliser systemctl enable --now
  • Ne pas configurer la persistance de journald — sans elle, les logs sont perdus au reboot et le diagnostic post-reboot est impossible
  • Négliger tuned : savoir activer un profil de performance fait partie des objectifs operate running systems

Ce bloc couvre le partitionnement, les volumes logiques, le swap et les montages persistants.

  1. Créer, supprimer et modifier des partitions physiques
  2. Gérer des volumes logiques (LVM)
  3. Configurer le swap
  4. Assurer la persistance des montages après redémarrage

Partitions :

  • Créer des partitions GPT avec gdisk ou parted
  • Informer le noyau qu’une table de partitions a changé (partprobe)
  • Identifier les disques et partitions disponibles (lsblk, blkid)

LVM :

  • Créer un Physical Volume, un Volume Group et un Logical Volume
  • Étendre un VG en ajoutant un disque, puis étendre un LV
  • Redimensionner le filesystem après l’extension du LVresize2fs pour ext4, xfs_growfs pour XFS (monté uniquement)
  • Créer un snapshot LVM si demandé
  • Supprimer proprement un LV

Swap :

  • Créer une partition swap ou un fichier swap
  • Activer le swap de façon éphémère et de façon persistante via /etc/fstab
  • Vérifier l’état du swap actif

Persistance (fstab) :

  • Monter un filesystem via /etc/fstab en utilisant l’UUID — jamais /dev/sdX
  • Tester la cohérence de /etc/fstab avant le reboot (mount -a, findmnt --verify)
  • Comprendre qu’une erreur dans fstab peut empêcher le système de démarrer
  • Utiliser /dev/sdb1 au lieu de l’UUID dans /etc/fstab — les noms de devices peuvent changer entre les reboots
  • Étendre un LV sans redimensionner le filesystem — l’espace supplémentaire reste invisible
  • Ne pas tester mount -a après modification de /etc/fstab — une erreur de syntaxe peut rendre le système non bootable
  • Oublier de créer le point de montage (mkdir -p) avant d’ajouter l’entrée fstab

Ce bloc couvre la création de systèmes de fichiers, les attributs, les permissions avancées (ACL), le chiffrement éventuel et les systèmes de fichiers réseau.

  1. Créer et configurer des systèmes de fichiers (ext4, xfs, vfat)
  2. Gérer les attributs de systèmes de fichiers
  3. Configurer les permissions, les ACL et le chiffrement si demandé
  4. Utiliser des systèmes de fichiers réseau (NFS)

Création et gestion de filesystems :

  • Formater une partition ou un LV en ext4, XFS ou VFAT
  • Attribuer un label à un filesystem
  • Vérifier et réparer un filesystem non monté (e2fsck, xfs_repair)
  • Monter un filesystem avec les options appropriées

Attributs et labels :

  • Modifier le label d’un filesystem existant
  • Trouver l’UUID d’un block device avec blkid

ACL :

  • Ajouter une permission à un utilisateur ou un groupe spécifique sur un fichier ou répertoire
  • Définir des ACL par défaut pour que les nouveaux fichiers héritent des permissions
  • Supprimer des ACL ciblées ou réinitialiser toutes les ACL
  • Vérifier la présence d’ACL avec getfacl et reconnaître le + dans la sortie de ls -l

NFS :

  • Monter un partage NFS de façon persistante via /etc/fstab — avec l’option _netdev obligatoire
  • Découvrir les exports disponibles sur un serveur NFS (showmount -e)
  • Activer le service client NFS si nécessaire

Autofs :

  • Configurer autofs pour monter un partage à la demande
  • Comprendre la relation entre /etc/auto.master et les fichiers de map
  • Activer et vérifier le fonctionnement d’autofs
  • Oublier _netdev pour les montages NFS dans /etc/fstab — le montage échoue au boot car le réseau n’est pas encore disponible
  • Ne pas pratiquer autofs — le montage dynamique est un sujet qui se maîtrise uniquement par la pratique en lab
  • Confondre permissions classiques ugo/rwx et ACL — les ACL ne remplacent pas les permissions de base, elles les complètent
  • Oublier setfacl -d pour les ACL par défaut — les nouveaux fichiers n’héritent pas automatiquement des ACL du répertoire parent

Ce bloc couvre l’installation de logiciels, la gestion de dépôts, la maintenance système et la configuration des services de base.

  1. Installer, mettre à jour et maintenir le système et les logiciels
  2. Gérer l’installation logicielle via les dépôts et les modules
  3. Configurer les services de base du système
  4. Maintenir un système fonctionnel et cohérent

Gestion de paquets (dnf/rpm) :

  • Installer, supprimer, mettre à jour un paquet
  • Rechercher un paquet ou identifier quel paquet fournit un fichier donné
  • Consulter l’historique des transactions et effectuer un rollback si nécessaire
  • Vérifier l’intégrité d’un paquet installé

Modules AppStream :

  • Lister les modules disponibles et leurs streams
  • Activer un stream spécifique et installer un profil de module
  • Comprendre que le changement de stream peut nécessiter un reset préalable

Dépôts (yum/dnf repos) :

  • Ajouter un dépôt externe ou local
  • Activer ou désactiver un dépôt existant
  • Créer un fichier .repo dans /etc/yum.repos.d/ avec la bonne syntaxe
  • Vider et reconstruire le cache

Flatpak :

  • Ajouter un dépôt Flatpak (Flathub)
  • Installer, lister, mettre à jour et supprimer une application Flatpak
  • Flatpak fait partie des objectifs EX200 — ne pas le négliger

Tuned :

  • Lister les profils de tuning disponibles
  • Activer un profil de performance adapté à l’usage du système
  • Vérifier le profil actif et savoir quel profil est recommandé

Configuration réseau de base :

  • Configurer une interface réseau avec une adresse IPv4 et IPv6 statique via nmcli
  • Modifier le hostname de façon persistante
  • Configurer la résolution DNS
  • Ajouter des routes statiques persistantes
  • Appliquer les modifications sans reboot
  • Oublier nmcli con up après nmcli con mod — les modifications ne sont pas appliquées tant que la connexion n’est pas réactivée
  • Ne pas savoir créer un fichier .repo manuellement — en examen, le dépôt peut ne pas être pré-configuré
  • Ignorer Flatpak dans la préparation — c’est un objectif officiel récent
  • Confondre la configuration réseau immédiate et la configuration persistante — sans nmcli, les modifications ip addr sont éphémères

Ce bloc couvre la gestion des comptes utilisateurs, des groupes et des droits d’accès.

  1. Créer, modifier et supprimer des comptes utilisateurs locaux
  2. Créer et gérer des groupes
  3. Affecter les bons groupes aux utilisateurs
  4. Changer d’utilisateur et gérer les droits associés

Comptes utilisateurs :

  • Créer un utilisateur avec des paramètres précis : home, shell, UID, groupe principal, groupes secondaires
  • Ajouter un utilisateur à un groupe secondaire sans perdre ses groupes existants (usermod -aG)
  • Verrouiller et déverrouiller un compte
  • Supprimer un compte et son répertoire personnel
  • Définir un mot de passe interactivement et en mode non interactif

Politique de mots de passe :

  • Configurer l’expiration du mot de passe (durée max, durée min, avertissement)
  • Configurer l’expiration du compte (date limite)
  • Forcer un changement de mot de passe à la prochaine connexion
  • Vérifier la politique appliquée à un utilisateur

Groupes :

  • Créer un groupe avec un GID spécifique
  • Ajouter et retirer des membres d’un groupe
  • Vérifier l’appartenance aux groupes d’un utilisateur

Délégation sudo :

  • Configurer des règles sudo ciblées dans /etc/sudoers.d/
  • Appliquer le moindre privilège : ne pas donner ALL=(ALL) ALL quand une commande spécifique suffit
  • Vérifier les droits sudo effectifs d’un utilisateur
  • Comprendre le rôle du groupe wheel sur RHEL
  • Utiliser usermod -G au lieu de usermod -aG — sans -a, les groupes secondaires existants sont écrasés
  • Ne pas vérifier le résultat avec id après modification — l’examen évalue le résultat, pas la commande
  • Créer des règles sudo trop permissives — en environnement Red Hat, le moindre privilège est attendu
  • Oublier de définir un mot de passe après useradd — le compte existe mais est inaccessible

Ce bloc couvre la sécurité du système : firewall, SELinux et authentification SSH par clé.

  1. Configurer le firewall de base
  2. Gérer SELinux : modes, contextes, booleans, ports
  3. Configurer l’authentification SSH par clé

Firewall (firewalld) :

  • Autoriser un service ou un port dans le firewall de façon permanente
  • Appliquer les règles permanentes avec --reload — sans reload, la règle permanente n’est pas active
  • Changer la zone par défaut
  • Vérifier la configuration complète du firewall
  • Comprendre que --permanent seul ne rend pas la règle immédiatement active, et qu’une règle sans --permanent est perdue au reboot

SELinux :

  • Vérifier le mode courant (Enforcing, Permissive, Disabled) et la politique active
  • Passer du mode Enforcing au mode Permissive de façon éphémère et de façon persistante (/etc/selinux/config)
  • Afficher et comprendre le contexte SELinux d’un fichier (ls -Z) et d’un processus (ps -Z)
  • Corriger un contexte fichier : définir une règle persistante avec semanage fcontext puis appliquer avec restorecon
  • Ne pas utiliser chcon seul — le contexte sera écrasé au prochain relabel
  • Activer un boolean SELinux de façon persistante (setsebool -P)
  • Autoriser un port non standard pour un service (semanage port -a)
  • Diagnostiquer un refus SELinux : lire les logs d’audit (ausearch -m avc), utiliser sealert pour obtenir des suggestions, puis appliquer la correction (contexte, boolean ou port)
  • Comprendre que SELinux et le firewall sont deux couches indépendantes — un service peut être bloqué par l’un, l’autre, ou les deux

SSH par clé :

  • Générer une paire de clés (préférer ed25519)
  • Déployer la clé publique sur un serveur distant
  • Configurer le serveur SSH : désactiver l’authentification par mot de passe, interdire la connexion root directe
  • Vérifier les permissions obligatoires sur ~/.ssh/ (700) et ~/.ssh/authorized_keys (600)
  • Appliquer les modifications du serveur SSH sans couper les sessions actives
  • Ajouter une règle firewall avec --permanent mais oublier --reload — la règle existe dans la config mais n’est pas active
  • Désactiver SELinux au lieu de le gérer — la RHCSA exige de travailler en mode Enforcing
  • Utiliser chcon au lieu de semanage fcontext + restorecon — la correction ne survit pas à un relabel
  • Oublier que semanage port et firewall-cmd sont deux choses différentes : l’un gère le label SELinux du port, l’autre l’autorise dans le pare-feu — les deux sont souvent nécessaires pour un service non standard
  • Mauvaises permissions sur ~/.ssh/ — SSH refuse silencieusement l’authentification par clé

Ce bloc couvre la gestion de base de conteneurs. Sur RHEL, l’outil par défaut est Podman en mode rootless.

  1. Effectuer une gestion basique de conteneurs : chercher, récupérer, inspecter, démarrer, arrêter et supprimer des conteneurs
  • Rechercher et télécharger une image depuis un registry
  • Lancer un conteneur en arrière-plan avec un port exposé
  • Inspecter un conteneur et exécuter une commande à l’intérieur
  • Arrêter et supprimer un conteneur
  • Lister les images locales
  • Générer un unit systemd à partir d’un conteneur existant pour le rendre persistant
  • Activer le service conteneur en mode rootless (systemctl --user enable)
  • Configurer loginctl enable-linger pour qu’un conteneur rootless démarre sans session interactive
  • Oublier loginctl enable-linger — le conteneur rootless ne démarre pas automatiquement au boot
  • Ne pas pratiquer podman generate systemd — c’est souvent la façon attendue de rendre un conteneur persistant sur RHEL
  • Surpondérer les conteneurs dans la préparation au détriment des fondamentaux système — ce bloc reste secondaire par rapport au stockage, aux services ou à SELinux

La RHCSA ne se résume pas à exécuter des commandes. L’examen évalue votre capacité à produire un état stable qui survit au redémarrage. Le système est redémarré avant l’évaluation finale.

Cela concerne tous les blocs :

DomaineCe qui doit persister
StockageMontages dans /etc/fstab avec UUID, swap activé
RéseauConfiguration via nmcli (pas ip addr), hostname, routes, DNS
FirewallRègles avec --permanent + --reload
SELinuxContextes via semanage fcontext + restorecon, booleans avec -P, ports avec semanage port
Servicessystemctl enable (pas seulement start)
JournauxStorage=persistent dans /etc/systemd/journald.conf
ConteneursUnit systemd + loginctl enable-linger
PlanificationEntrées crontab, fichiers dans /etc/cron.d/
Boot targetsystemctl set-default
Tunedtuned-adm profile (persistant par défaut si le service est activé)

Règle d’or : si vous configurez quelque chose pendant l’examen et que ce n’est plus là après reboot, le point n’est pas marqué.


Ces sujets font souvent la différence entre un candidat qui rate de peu et un candidat qui réussit.

CompétencePourquoi c’est discriminant
SELinuxBeaucoup le contournent au quotidien — la RHCSA exige de le gérer en Enforcing
LVM + redimensionnement FSL’extension d’un LV sans le resize du FS est l’erreur la plus courante
Interrompre le boot (rd.break)Procédure mécanique qui doit être fluide — le moindre oubli bloque
Firewall persistantLe duo --permanent + --reload doit être un automatisme
Services et journauxDiagnostiquer un service failed avec journalctl est attendu, pas seulement démarrer des services
fstab avec UUIDUne erreur dans fstab peut rendre le système non bootable — tester avant le reboot est vital
ACLLes permissions avancées sont souvent négligées, mais explicitement dans le blueprint
AutofsLe montage à la demande ne s’invente pas — il faut l’avoir pratiqué
Scripts shellUn script non fonctionnel ne marque aucun point — la syntaxe doit être sûre

Ces principes sont transversaux à tous les blocs de compétences.

Toujours distinguer configuration immédiate et configuration persistante :

Sur RHEL, beaucoup de modifications sont éphémères par défaut. Si vous ne savez pas comment rendre un changement permanent, vous ne maîtrisez pas encore la compétence.

Toujours vérifier le résultat après modification :

L’examen évalue l’état du système, pas les commandes tapées. Après chaque action : systemctl status, findmnt, firewall-cmd --list-all, getenforce, ip addr, ss -tulpn

Savoir diagnostiquer, pas seulement exécuter :

Le blueprint demande explicitement de dépanner et de localiser des problèmes. Lire des journaux, interpréter un message d’erreur, identifier une cause : ce sont des compétences à part entière.

Réviser sur un environnement RHEL 10 :

L’examen est basé sur RHEL 10. Les outils RHEL (dnf, nmcli, firewalld, systemd, SELinux, Podman) sont spécifiques — les maîtriser sur une autre distribution ne suffit pas.

Travailler les fondamentaux avant les sujets périphériques :

Le stockage (LVM, fstab), les services (systemd, journalctl), la sécurité (firewalld, SELinux) et le boot recovery représentent le cœur de l’examen. Maîtrisez-les parfaitement avant de consacrer du temps aux conteneurs ou à Flatpak.

Utiliser les ressources autorisées :

Pendant l’examen, man, --help, info et /usr/share/doc sont disponibles. Savoir naviguer rapidement dans une page man pour trouver la bonne option fait gagner un temps précieux.


  • La RHCSA est un examen performance-based sur RHEL 10 — chaque tâche doit produire un résultat fonctionnel et persistant.
  • Red Hat publie des objectifs de compétence, pas une liste de commandes — la page EX200 décrit ce que vous devez savoir faire.
  • Le système est redémarré avant évaluation — tout ce qui n’est pas persistant est perdu et ne marque pas de point.
  • Les blocs les plus lourds sont : stockage et LVM, services et journaux, firewall et SELinux, récupération de boot.
  • SELinux ne se contourne pas : l’examen exige de travailler en mode Enforcing et de savoir diagnostiquer les refus.
  • Le duo semanage + firewall-cmd est souvent nécessaire ensemble pour un service non standard.
  • La RHCSA est la base obligatoire vers la RHCE — les compétences acquises ici sont cumulatives.
  • L’entraînement en lab sur RHEL 10 est irremplaçable — relire une page de compétences ne suffit pas.

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracing. Aujourd'hui, ce site ne couvre même pas mes frais d'hébergement, d'électricité, de matériel, de logiciels, mais surtout de cafés.

Un soutien régulier, même symbolique, m'aide à garder ces ressources gratuites et à continuer de produire des guides de qualité. Merci pour votre appui.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn