Donner des droits root sous linux

Comment permettre à un utilisateur d'utiliser sudo ?

La commande sudo (Substitute User DO) est un outil très pratique pour exécuter une commande en se faisant passer pour un autre utilisateur, en particulier l'utilisateur root. Bien évidemment n'importe quel utilisateur ne peut pas utiliser sudo par défaut, il faut configurer les autorisations de sudo dans un fichier nommé sudoers.

Le sudoers est situé dans /etc, un "ls -l" dans ce dossier nous donne :

Visualisation de /etc

-r--r----- 1 root root 519 13 juin 17:14 sudoers

Comme vous pouvez le constater, le fichier n'a aucun droit en écriture. Pour modifier le sudoers il faut utiliser un éditeur dédié : visudo.

L'editeur visudo est, comme son nom l'indique, basé sur l'incontournable éditeur vi. En plus de permettre d'éditer le sudoers, il gère les conflits d'accès (lorsque 2 utilisateurs veulent modifier le sudoers en même temps) et permet de vérifier la syntaxe du sudoers.

Utilisation de visudo

# Ouverture du sudoers. # Pour passer en mode insertion (mode d'édition), appuyez sur "a". # Pour revenir en mode normal (mode commande) et enregistrer, appuyez sur échap et saisissez ":wq". visudo # Vérification de la syntaxe visudo -c /etc/sudoers: parsed OK # Si le sudoers n'est pas dans /etc visudo -f chemin/sudoers # Pour les autres options man visudo

Maintenant que vous connaissez visudo, il faut ajouter une autorisation dans le sudoers. Repérez la zone "User privilege specification" et ajoutez la ligne relative à votre utilisateur. Le NOPASSWD de ne pas avoir à saisir son mot de passe à chaque utilisation de la commande sudo.

Ajout d'une autorisation pour l'utilisateur nico

# User privilege specification root ALL=(ALL) ALL nico ALL=(ALL) NOPASSWD:ALL

Et n'oubliez pas que si les droits root ne sont pas attribués par défaut à tout le monde, il y a une raison évidente de sécurité...