Généralités système Linux

Sudo : Utiliser et paramétrer (sudoers)

Cet article a été mis à jour, vous consultez ici une archive de cet article!
Table des matières


Introduction





sudo (abréviation de substitute user do) est une commande permettant à l'administrateur système d'accorder à certains utilisateurs (ou groupes d'utilisateurs) la possibilité de lancer une commande en tant qu'administrateur.





Utiliser sudo





sudo s'utilise en ligne de commande, dans un terminal. Il permet de prendre les droits root pour exécuter une commande.



Le mot de passe demandé est celui de l'utilisateur qui a saisi sudo, ici adrien.

La commande sera exécutée si le mot de passe entré est correct et que l'utilisateur courant peut effectuer des tâches d'administration.



Code BASH :
adrien@linux: ~  $ ls /root
ls: impossible d'ouvrir le répertoire /root: Permission non accordée
adrien@linux: ~  $ sudo ls /root
[sudo] password for adrien: 
script-de-root.sh




Le mot de passe est mémorisé par défaut pour une durée de 15 minutes.

Pendant ce laps de temps, on peut toujours saisir des commandes avec sudo mais le mot de passe ne sera pas demandé.



Code BASH :
 adrien@superlinux: ~  $ sudo touch /root/test




Il, par sécurité, on souhaite "oublier" le mot de passe mémorisé, on peut utiliser :



Code BASH :
sudo -k




On peut ouvrir une "session root" avec sudo, via



Code BASH :
sudo -i




sudo -i revient au même que la commande su - en terme de droits.

Avec sudo -i, le mot de passe utilisateur est demandé.

Avec su -, le mot de passe root est demandé.



sudo -i est donc plus élégant que sudo su ;)






Configurer sudo





Les autorisations pour utiliser sudo sont définies dans le fichier /etc/sudoers.



Pour l'éditer, il est préférable d'utiliser la commande suivante :



Code BASH :
visudo




En effet, avec visudo, lors de l’enregistrement, l’outil nous indique s'il y a une erreur de syntaxe.