2 votes

Comment limiter les utilisateurs qu'un utilisateur spécifique peut exécuter des commandes sous Linux?

J'ai 2 comptes d'utilisateur, foo et bar

Je veux autoriser l'utilisateur foo à exécuter des commandes en tant que root et tout autre utilisateur, c'est-à-dire:

sudo su root -c'./run-my-script'

sudo su bar -c'./another-script'

sudo su another -c'./yet-another-script

Je veux également autoriser l'utilisateur bar à exécuter des commandes en tant qu'un autre utilisateur mais seulement un sous-ensemble et pas en tant que root, c'est-à-dire:

sudo su bar -c'./run-my-script'

mais pas

sudo su root -c'./run-my-script'

Est-ce possible ?

8voto

James Yale Points 4942

Oui, c'est certainement possible.

Tout d'abord, vous devez corriger votre utilisation de sudo, pour exécuter une commande en tant qu'utilisateur autre que root (par défaut) avec sudo, la syntaxe est : sudo -u nom_utilisateur commande

Vous pouvez ensuite restreindre les utilisateurs dont l'identité un utilisateur peut assumer via le fichier de configuration /etc/sudoers, par exemple un utilisateur entièrement privilégié ressemble à :

jim ALL=(ALL) ALL

Alors qu'un utilisateur avec des restrictions ressemble à :

jim ALL=(admin,bill) ALL

Ce qui signifie que si j'essaie d'exécuter une commande en tant qu'utilisateur qui n'est pas dans la liste, je suis refusé :

jim@monpc:~$ sudo -u personne qui suis-je
Désolé, l'utilisateur jim n'est pas autorisé à exécuter '/usr/bin/whoami' en tant que personne sur monpc.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X