Informatix le gaulois

Tutoriels et outils pour l'informatique.

Informatix > Tutoriels > Unix - Linux - BSD > Ecrire dans le sudoers grâce à visudo

Ecrire dans le sudoers grâce à visudo

Comment permettre à un utilisateur d'utiliser sudo ?

lundi 13 juin 2011 à 18:28

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 petit ls -l dans ce dossier nous donne :

Visualisation de /etc

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

... Mais il n'a que des droits en lecture ce fichier !!!

Don't panic, il existe une commande permettant de lancer un éditeur spécialement conçu pour éditer le sudoers : visudo. Je vous voyais déjà venir avec vos chmod +w /etc/sudoers.

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 signifie (je pense que vous vous en doutez) à 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é...

Nicolas GAUTRON

Auteur

Nicolas GAUTRON
Créateur et administrateur.
http://www.informatix.fr



^ Haut de page ^



Dans la même catégorie

Linux : Comment configurer une adresse IP fixe ?
Comment supprimer les fichiers plus vieux qu'une date donnée en bash ?
Apache 2 : Comment changer le DocumentRoot en fonction du port ?
GIT : Comment ajouter les nouveaux fichiers automatiquement ?
Comment exécuter un script local sur une machine distante avec SSH ?
32 bits ou 64 bits ?


Commentaire(s)



^ Haut de page | Commentaires ^