Dans tout système d'exploitation multi-utilisateur, la gestion des utilisateurs et des groupes est un concept fondamental. C'est un élément central des bases de linux, conçu pour le contrôle d'accès et les permissions. Lorsqu'un processus s'exécute, il le fait en tant qu'utilisateur qui l'a lancé. De même, l'accès aux fichiers et la propriété dépendent des permissions, empêchant un utilisateur d'accéder aux documents privés d'un autre.
Les bases des utilisateurs et des groupes Linux
Chaque utilisateur d'un système Linux se voit attribuer un répertoire personnel, généralement situé dans /home/nom_utilisateur. Ce répertoire est l'endroit où sont stockés ses fichiers et configurations spécifiques à l'utilisateur, bien que le chemin exact puisse varier selon les distributions Linux.
Le système identifie les utilisateurs par un ID utilisateur (UID) et les groupes par un ID de groupe (GID). Bien que nous utilisions des noms d'utilisateur lisibles par l'homme, le système d'exploitation s'appuie sur ces identifiants numériques uniques pour toutes les tâches liées aux permissions. Les groupes sont simplement des collections d'utilisateurs, ce qui facilite la gestion des permissions pour plusieurs comptes à la fois.
Le Superutilisateur et la commande Sudo
Au sein de la hiérarchie des utilisateurs et groupes linux, un utilisateur se situe au-dessus de tous les autres : root, également connu sous le nom de superutilisateur. L'utilisateur root dispose d'un pouvoir illimité, capable d'accéder à n'importe quel fichier et de gérer n'importe quel processus. Opérer continuellement en tant que root est risqué, car une simple erreur pourrait endommager le système.
Pour atténuer ce risque, les utilisateurs autorisés peuvent exécuter des commandes avec des privilèges root en utilisant la commande sudo (superuser do). Cela permet d'effectuer des tâches administratives sans se connecter en tant qu'utilisateur root. Comprendre comment utiliser correctement sudo est essentiel pour quiconque souhaite acquérir les compétences d'administration du niveau avancé linux le plus rapide.
Essayons de visualiser un fichier protégé, tel que /etc/shadow, qui stocke les mots de passe utilisateur chiffrés.
cat /etc/shadow
Vous recevrez une erreur "Permission non accordée". Examinons les permissions du fichier :
$ ls -la /etc/shadow
-rw-r----- 1 root shadow 1134 Dec 1 11:45 /etc/shadow
Bien que nous abordions les permissions en détail plus tard, cette sortie montre que seuls l'utilisateur root et les membres du groupe shadow peuvent lire ce fichier. Exécutez maintenant la commande à nouveau avec sudo :
sudo cat /etc/shadow
Cette fois, votre mot de passe vous sera demandé et, après une authentification réussie, le contenu du fichier sera affiché.