Table des matières

Sudo / Sudoers

Editer sudo (ajout / modif de droit)

Toujours utiliser cette commande pour modifier le fichier /ETC/SUDOERS

visudo
user,%group source1,source2 = [NOPASSWD:] [(UID)[:(GID)]] cmd1,!cmd2

Note: source1,source2 :
une adresse ou plage IP : 10.0.0.1 10.0.0.0/16
un nom d'hôte, de domaine : pc1.sirius.com *.sirius.com
ALL : toutes les machines

Note: NOPASSWD:
Optionnel. Pour passer outre les mots de passe. Bien sûr, cette directive est à utiliser avec la plus grande prudence. Incompatible avec la directive “(*ID)” (la directive PASSWD est également disponible).

Note: (UID)
Optionnel. Définit les exécutants. Par défaut, les privilèges utilisés sont ceux de root, mais il est possible d'utiliser les privilèges d'autres utilisateurs. On peut fournir une liste d’utilisateurs, séparés par une virgule. un utilisateur Unix : hector

Note: ALL :
n'importe quel utilisateur, root par défaut Nota : il faudra dans ce cas d'invoquer sudo avec le bon utilisateur :

sudo -u hector commande.sh \\

Note: (:GID)
Optionnel. Définit les groupes exécutants. On peut fournir une liste de groupes, séparés par une virgule. un groupe Unix : compta

Note: ALL :
n'importe quel groupe, root par défaut Lorsqu'il n'y a pas de distinction entre les exécutants utilisateurs et groupes, la recherche est effectuée indifféremment sur les utilisateurs et les groupes. cmd1,!cmd2 Pour spécifier les commandes à utiliser. On peut fournir une liste séparée par des virgules. Préciser le chemin des commandes. Il est possible d'affiner les privilèges accordés par l'utilisation des options de commandes. une liste de commandes, avec ou sans options :

/usr/sbin/user* , /bin/mount /dev/cdrom * , /bin/umount /dev/cdrom
ALL : toutes les commandes (comme root)

Exemple

Certains utilisateurs doivent pouvoir monter ou démonter le système de fichier d'un CD-Rom. Nous allons accorder aux membres du groupe CD-Rom (déjà existant) les permissions nécessaires :

visudo
%cdrom ALL = /bin/mount /dev/cdrom * , /bin/umount /dev/cdrom 

Il ne reste plus qu'à ajouter les utilisateurs autorisés dans le groupe CD-Rom :

# usermod -a -G cdrom hector 

L'utilisateur peut connaître la liste des délégations disponibles :

USER
hector@debian:~$ sudo -l [sudo] password for hector: User hector may run the following commands on this host: (root) /bin/mount /dev/cdrom *, /bin/umount /dev/cdrom

UTILISER LES ALIAS

USER
# Host alias specification # Pour définir des groupes de machines ou de réseaux # option utilisée lorsque le fichier sudoers est utilisé sur plusieurs machines Host_Alias LAN=172.16.0.0/16,172.18.0.0/16,10.0.0.0/8 # User alias specification # Pour définir des groupes d’utilisateurs User_Alias ADMIN=hector,marcel,jeanne User_Alias OP_CD=edmonde,marcel # Runas alias specification # pour définir les exécutants Runas_Alias DB = oracle, sybase # Cmnd alias specification # Pour définir des groupes de commandes Cmnd_Alias CDROM=/bin/mount /dev/cdrom * , /bin/umount/ /dev/cdrom # User privilege specification # Il ne reste plus qu'à affecter les alias en lieu et place des options OP_CD ALL= CDROM