Afficher la pageAnciennes révisionsLiens de retourAjouter au livre.Haut de page Cette page est en lecture seule. Vous pouvez afficher le texte source, mais ne pourrez pas le modifier. Contactez votre administrateur si vous pensez qu'il s'agit d'une erreur. ====== 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 <bootnote> 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 </bootnote> <bootnote> 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). </bootnote> <bootnote> (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 \\ </bootnote> <bootnote> 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 \\ </bootnote> <bootnote> (: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** </bootnote> <bootnote> 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) </bootnote> ===== 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 : <konsole> 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 </konsole> ===== UTILISER LES ALIAS ===== <konsole> # 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 </konsole> public/sudo.txt Dernière modification : 2024/10/24 09:39de 127.0.0.1