User Tools

Site Tools


informatique:logiciels:sudo

This is an old revision of the document!


sudo

sudo est un utilitaire qui permet d'exécuter une commande sous un autre utilisateur de la machine.

Installation :

aptitude install sudo

Par défaut, sous Debian, on a ce genre de configuration :

cat /etc/sudoers
[..]
# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

… qui permet à tout utilisateur membre du groupe sudo de lancer des commandes en tant que root (en re-saisissant son mot de passe) ainsi : sudo <CMD>.

Exemple de configuration :

vi /etc/sudoers/apache
 
# permettre a l'utilisateur apache de lancer s1 et s2 en tant que admin,
# à partir de n'importe quelle machine (ALL) et sans saisir de mot de passe
Cmnd_Alias	 HTTP_SCRIPTS = /scripts/s1.sh, /scripts/s2.sh
apache ALL=(admin)NOPASSWD: HTTP_SCRIPTS

Les différentes options / cas d'utilisation :

# lancer une commande en tant que admin
sudo -u admin <CMD>
# lancer une commande en tant que root
sudo <CMD>
# se connecter (obtenir un shell) en tant que root
sudo -i
 
# afficher les droits sudo de l'utilisateur apache
sudo -l -U apache

Tips

Lancer plusieurs commandes

Pour lancer plusieurs commandes avec un seul sudo :

sudo -s -- 'whoami; whoami'
root
root
 
# La précédente option "-s" ne fonctionne pas toujours ;
# en alternative, lancer un shell qui exécute les commandes :
sudo -- sh -c 'whoami; whoami'
root
root
informatique/logiciels/sudo.1563865846.txt.gz · Last modified: 2019/07/23 07:10 by pteu