Sécurité
Commande Unix et Linux qui permet à un utilisateur autorisé d'exécuter une commande sous l'identité d'un autre compte, root le plus souvent, en s'authentifiant avec son propre mot de passe. Chaque élévation passe par des règles déclarées à l'avance et laisse une trace dans les journaux.
Fonctionnement : sudo consulte /etc/sudoers (et /etc/sudoers.d) pour savoir si tel utilisateur peut lancer telle commande sous tel compte. Il demande ensuite le mot de passe de l'utilisateur, jamais celui de root (c'est toute la différence avec su), puis garde l'authentification en cache quelques minutes (15 par défaut, par terminal).
Délégation fine : Les règles peuvent limiter l'élévation à quelques commandes précises plutôt qu'au shell entier, et chaque appel part dans syslog ou journald. Une règle NOPASSWD: ALL ramène tout ce dispositif à un root partagé avec une étape de plus. Elle est toujours posée « en attendant », et se retrouve toujours en place à l'audit suivant.
Édition des règles : On modifie sudoers uniquement avec visudo, qui verrouille le fichier et vérifie la syntaxe avant d'enregistrer. Une faute de frappe enregistrée à la main bloque sudo pour tout le monde, administrateur compris : il reste le mot de passe de root, que l'on avait justement cessé de connaître.
Piège classique : Dans « sudo commande > fichier », c'est le shell de l'utilisateur qui fait la redirection, sans aucun privilège. Pour écrire dans un fichier protégé, on passe par « commande | sudo tee fichier ».
Ce qui arrive si on s'en passe
Sans sudo, l'administration repose sur une connexion directe en root ou sur un mot de passe root partagé (via su). Toutes les actions privilégiées apparaissent alors sous une seule identité : les journaux n'indiquent plus qui a lancé quelle commande, et l'analyse après un incident perd son point d'appui. Le moindre besoin ponctuel (redémarrer un service, lire un journal protégé) donne les pleins pouvoirs, faute de règles qui limitent les commandes autorisées. Retirer l'accès d'une seule personne impose de changer le secret commun et de le transmettre de nouveau à toutes les autres. Si la connexion root reste ouverte à distance, un attaquant connaît d'avance le nom du compte à viser : il ne lui reste qu'un mot de passe à deviner pour obtenir le contrôle total de la machine.
Explication de la marmotte
Sur un ordinateur, certaines actions sont risquées : installer un programme, changer des réglages profonds, effacer des fichiers dont la machine a besoin pour fonctionner. Pour éviter les catastrophes, on ne travaille pas tous les jours avec les pleins pouvoirs. sudo, c'est comme demander la clé passe-partout au gardien du lycée. Tu donnes ton propre mot de passe. Le gardien vérifie sur sa liste que tu as le droit d'ouvrir cette salle-là. Il te prête la clé pour cette seule action, puis il note dans son cahier qui a ouvert quoi et à quelle heure. Si ton nom n'est pas sur la liste, la porte reste fermée, et le refus est noté aussi.
Où ce terme est utilisé
- Écrire des scripts Bash système fiables et sûrs en production (4 occurrences)
- Linux shell, permissions et processus, le modèle de contrôle d'accès (2 occurrences)
- Protocole SSH, clés d'hôte, authentification et durcissement (2 occurrences)
- Cairn, un moteur multi-agents de recherche dans un espace d'états (1 occurrence)
- Docker ou Podman en auto-hébergement : root, rootless, isolation (1 occurrence)
- Strix, des agents de test d'intrusion autonomes en bac à sable (1 occurrence)
