10 jeux amusants à jouer dans le terminal Linux
Agence web » Actualités du digital » Comment ajouter un utilisateur au fichier sudoers sous Linux

Comment ajouter un utilisateur au fichier sudoers sous Linux

Si on vous dit qu’un utilisateur « n’est pas dans le fichier sudoers », vous pouvez donner à l’utilisateur tous les privilèges sudo avec la commande usermod. Pour contrôler ce qu’un utilisateur peut faire avec sudo, modifiez le fichier sudoers avec visudo.

Les personnes qui peuvent utiliser Linux sudo command sont membres d’un petit club sélect, parfois appelé la liste des « sudoers ». Chaque membre dispose des mêmes pouvoirs que root. Alors comment rejoindre ce club ? Nous allons parcourir l’ajout d’une personne à sudoers ainsi que la modification du fichier sudoers pour limiter les autorisations.

sudo : votre alter-ego surpuissant

Dans les installations Linux, l’utilisateur root est l’utilisateur le plus privilégié. Ils peuvent effectuer n’importe quelle tâche administrative, accéder à n’importe quel fichier, quel qu’en soit le propriétaire, et ils peuvent créer, manipuler et même supprimer d’autres utilisateurs.

Ce niveau de puissance est dangereux. Si root fait une erreur, les résultats peuvent être catastrophiques. Ils ont la capacité de monter et de démonter des systèmes de fichiers et de les écraser entièrement. Une façon beaucoup plus sûre de travailler est de ne jamais se connecter en tant que root.

Les utilisateurs désignés peuvent utiliser sudo pour obtenir temporairement des pouvoirs administratifs, effectuer l’action requise, puis revenir à leur état normal et non privilégié. C’est plus sûr parce que vous invoquez consciemment vos pouvoirs supérieurs lorsque vous en avez besoin, et pendant que vous vous concentrez sur ce qui en a besoin.

La sudo La commande est l’équivalent Linux de crier « Shazam ». Lorsque les trucs effrayants sont terminés, vous abandonnez votre alter ego surpuissant et revenez à votre moi normal et monotone.

Se connecter en tant que root est désactivé par défaut sur la plupart des distributions modernes, mais il peut être rétabli. L’utilisation du compte root pour le travail quotidien est déconseillée. Les erreurs qui auraient normalement un impact sur un seul utilisateur ou qui seraient complètement bloquées en raison de privilèges insuffisants, peuvent s’exécuter sans entrave si root les délivre.

Subvention pour les distributions Linux modernes sudo privilèges au compte d’utilisateur créé lors des étapes d’installation ou de configuration post-installation. Si quelqu’un d’autre essaie d’utiliser sudo un message d’avertissement semblable à celui-ci s’affichera :

mary is not in the sudoers file. This incident will be reported.

Cela semble assez clair. Notre utilisateur mary ne peut pas utiliser sudo parce qu’elle n’est pas « dans le fichier sudoers ». Voyons donc comment nous pouvons l’ajouter.

Les sudoers Fichier et visudo

Avant que quelqu’un puisse utiliser le sudo commande nous devons travailler avec le sudoers dossier. Cela répertorie les groupes d’utilisateurs des utilisateurs qui peuvent utiliser sudo. Si nous devons apporter des modifications au fichier, nous devons le modifier.

La sudoers dossier devoir être ouvert à l’aide de la visudo commande. Cela verrouille le sudoers fichier et empêche deux personnes d’essayer d’apporter des modifications en même temps. Il effectue également des vérifications d’intégrité avant d’enregistrer vos modifications, en s’assurant qu’elles sont correctement analysées et syntaxiquement correctes.

Notez que visudo n’est pas un éditeur, il lance l’un de vos éditeurs disponibles. Sur Ubuntu 22.04, Fedora 37 et Manjaro 21, visudo nano lancé. Ce n’est peut-être pas le cas sur votre ordinateur.

Si nous voulons donner à quelqu’un un accès complet sudo privilèges, nous avons seulement besoin de référencer certaines informations de la sudoers dossier. Si nous voulons être plus granulaires et donner à notre utilisateur certaines des fonctionnalités de rootnous devons modifier le fichier et enregistrer les modifications.

Dans tous les cas, nous devons utiliser visudo.

Ajouter un nouvel utilisateur sudo dans Ubuntu et d’autres distributions Linux

Nous avons deux utilisateurs qui ont besoin d’accéder aux privilèges root afin d’exercer leurs fonctions. Ce sont Tom et Marie. Marie doit avoir accès à tout root peut faire. Tom n’a besoin que d’installer des applications.

Ajoutons d’abord Mary au groupe des sudoers. Nous devons commencer visudo.

sudo visudo

Lancer visudo sur Ubuntu Linux

Faites défiler vers le bas dans l’éditeur jusqu’à ce que vous voyiez la section « Spécification des privilèges de l’utilisateur ». Recherchez un commentaire qui dit quelque chose de similaire à « Autoriser les membres de ce groupe à exécuter n’importe quelle commande ».

Le fichier sudoers ouvert dans l'éditeur nano

On nous dit que les membres du sudo groupe peut exécuter n’importe quelle commande. Tout ce que nous avons besoin de savoir dans le cas de Mary, c’est le nom de ce groupe. Ce n’est pas toujours sudo ; Ça pourrait être wheel ou autre chose. Maintenant que nous connaissons le nom du groupe, nous pouvons fermer l’éditeur et ajouter Mary à ce groupe.

Nous utilisons le usermod commande avec le -a (annexer) et -G (nom du groupe). La -G L’option nous permet de nommer le groupe auquel nous aimerions ajouter l’utilisateur, et l’option -a l’option indique usermod pour ajouter le nouveau groupe à la liste des groupes existants dans lesquels cet utilisateur se trouve déjà.

Si vous n’utilisez pas le -a option, le seul groupe dans lequel votre utilisateur sera est le groupe nouvellement ajouté. Vérifiez et assurez-vous d’avoir inclus le -a option.

sudo usermod -aG sudo mary

Utiliser usermod pour ajouter l'utilisateur mary au groupe sudo

La prochaine fois que Marie se connectera, elle aura accès à sudo. Nous l’avons connectée et nous essayons de modifier le fichier de la table du système de fichiers, « /etc/fstab ». Il s’agit d’un fichier interdit à tout le monde, mais root.

sudo nano /etc/fstab

Utiliser usermod pour ajouter l'utilisateur mary au groupe sudo

L’éditeur nano s’ouvre avec le fichier « /etc/fstab » chargé.

l'utilisateur mary modifie le fichier /etc/fstab en utilisant sudo

Sans pour autant sudo privilèges, vous ne pourrez l’ouvrir qu’en tant que fichier en lecture seule. Mary n’a plus ces restrictions. Elle peut enregistrer toutes les modifications qu’elle apporte.

Fermez l’éditeur et ne le faites pas enregistrer toutes les modifications que vous avez pu apporter.

Limitez les privilèges sudo en éditant le fichier sudoers

Notre autre utilisateur, Tom, va recevoir l’autorisation d’installer le logiciel, mais il ne recevra pas tous les privilèges accordés à Mary.

Nous devons éditer le sudoers dossier.

sudo visudo

Lancer visudo sur Ubuntu Linux

Faites défiler vers le bas dans l’éditeur jusqu’à ce que vous voyiez la section « Spécification des privilèges de l’utilisateur ». Recherchez un commentaire qui dit quelque chose de similaire à « Autoriser les membres de ce groupe à exécuter n’importe quelle commande ». C’est le même point dans le fichier où nous avons trouvé le nom du groupe auquel nous devions ajouter Mary.

Ajoutez ces lignes sous cette section.

# user tom can install software
tom     ALL=(root) /usr/bin/apt

Ajout de nouvelles entrées au fichier sudoers

La première ligne est un simple commentaire. Notez qu’il y a un onglet entre le nom d’utilisateur « tom » et le mot « All ».

C’est ce que signifient les éléments sur la ligne.

  • à M: Le nom de l’utilisateur groupe par défaut. Il s’agit généralement du même nom que le nom de leur compte d’utilisateur.
  • TOUS=: Cette règle s’applique à tous les hôtes de ce réseau.
  • (racine): Les membres du groupe « tom », c’est-à-dire l’utilisateur Tom, peuvent supposer root privilèges, pour les commandes répertoriées.
  • /usr/bin/apt: C’est la seule commande que l’utilisateur Tom peut exécuter en tant que root.

Nous avons spécifié le apt gestionnaire de paquets ici car cet ordinateur utilise Ubuntu Linux. Vous devrez le remplacer par la commande appropriée si vous utilisez une distribution différente.

Connectons Tom et voyons si nous obtenons le comportement attendu. Nous allons essayer de modifier le fichier « /etc/fstab ».

sudo nano /etc/fstab

Essayer de modifier le fichier /etc/fstab sans privilèges sudo

Cette commande est rejetée et on nous dit que « l’utilisateur tom n’est pas autorisé à exécuter ‘/usr/bin/nano /etc/fstab’ en tant que root… »

C’est ce que nous voulions. L’utilisateur Tom est uniquement censé pouvoir utiliser le apt directeur chargé d’emballage. Assurons-nous qu’ils peuvent le faire.

sudo apt install neofetch

Utilisateur Tom utilisant la commande apt avec sudo

La commande est exécutée avec succès pour Tom.

Celui qui détient ce commandement

Si tous vos utilisateurs peuvent utiliser sudo, vous aurez le chaos sur les bras. Mais cela vaut la peine de promouvoir d’autres utilisateurs afin qu’ils puissent partager votre charge administrative. Assurez-vous simplement qu’ils sont dignes et gardez un œil sur eux.

Même si vous êtes le seul utilisateur sur votre ordinateur, il vaut la peine d’envisager de créer un autre compte d’utilisateur et de lui donner un accès complet à sudo. De cette façon, si jamais vous vous retrouvez bloqué sur votre compte principal, vous avez un autre compte avec lequel vous pouvez vous connecter pour essayer de remédier à la situation.

★★★★★