Table des matières

VISUDO

SUDO

Sous Linux, sudo permet à un utilisateur lambda d’exécuter une unique commande avec des droits étendus.

On peut définir QUI a le droit, limiter ces droits à quelques commandes (QUOI)…
La config se détaille dans le fichier /etc/sudoers

Cependant il est interdit d'éditer directement le fichier sudoers : en effet, de nombreuses personnes n'accèdent aux droits root que par l'intermédiaire de la commande sudo, si le fichier de conf est erroné, sudo ne se lancera plus et on perd complètement tout accès à root… plus possible de corriger son erreur.
C'est pourquoi il existe l'utilitaire visudo.

VISUDO

visudo verrouille le fichier sudoers, ouvre une copie temporaire en édition, valide le contenu après l'édition et si le contenu est valide, met à jour sudoers.

Choisir l'éditeur

On peut choisir l'éditeur par une variable d'environnement :

export EDITOR=/path/to/editor  # ex: /usr/bin/vim
 
visudo

Cependant, il faut effectuer l'opération à chaque fois que la session est fermée/ouverte. On peut rajouter une ligne dans ~/.bashrc.

Autre solution : mettre à jour le fichier de conf de visudo, c'est à dire le fichier /etc/sudoers (en utilisant visudo bien évidemment ;-) ) :

# fichier /etc/sudoers
 
## Choisir par défaut l'éditeur
Defaults editor=/usr/bin/vim

Donner des droits spécifiques

## /etc/sudoers, édité par visudo
 
# donner les droits root à un utilisateur pour 1 commande
USER_NAME ALL = (root) /path/to/command
 
# donner les droits root à un utilisateur pour toutes les commandes
USER_NAME ALL=(ALL:ALL) ALL
 
# Restreindre à une seule machine par hostname
USER_NAME HOST_NAME=(ALL:ALL) ALL