web-dev-qa-db-fra.com

Problème lors de l'exécution de la commande en tant qu'utilisateur différent avec Sudo -u

Lorsque j'essaie d'exécuter ls en tant qu'utilisateur abc avec la commande suivante, j'obtiens une erreur:

xyz@Host:~/temp$ Sudo -u abc ls
[Sudo] password for xyz:
Sorry, user xyz is not allowed to execute '/bin/ls' as abc on Host.

Mais si je le fais su abc puis exécutez ls je n'ai aucun problème

13
user1678312

Vous devez configurer la politique de sécurité de Sudo pour permettre à l'utilisateur xyz exec quelque chose en tant qu'utilisateur abc. Lisez 'man sudoers' et utilisez la commande visudo pour configurer/etc/sudoers.

Par exemple, autorisons l'utilisateur xyz exec/usr/bin/whoami en tant qu'utilisateur abc sans mot de passe. Ajoutez cette chaîne dans/etc/sudoers (avec visudo, ne modifiez pas directement/etc/sudoers):

xyz ALL = (abc) NOPASSWD: /usr/bin/whoami

Et maintenant testez-le:

xyz@Host:~$ Sudo -u abc /usr/bin/whoami
abc
18
svq

En effet, Sudo est différent de su. Quand vous su abc, vous devenez l'utilisateur abc en ce qui concerne le système. Vous pouvez alors faire tout ce que abc peut faire.

D'un autre côté, Sudo est utilisé pour permettre à d'autres utilisateurs d'exécuter certaines commandes par proxy. En d'autres termes, votre configuration Sudo vous permet d'effectuer certaines commandes au nom de abc. Si la commande que vous essayez d'exécuter n'en fait pas partie, vous obtenez l'erreur que vous avez signalée.

4
Joseph R.

Au cas où tout irait bien, mais vous obtenez toujours Sorry user xxx cannot execute... message et il vous demande toujours un mot de passe Sudo à chaque fois.

Tu peux le faire:

  1. Dans /etc/sudoers supprimer la ligne avec vos paramètres utilisateur
  2. Enregistrer le fichier
  3. Ouvrez le fichier, saisissez (NO COPING) vos options pour cet utilisateur
  4. Enregistrer le fichier
  5. Essayez-le.

Cela a fonctionné pour moi. Il s'est avéré que la fin de cette ligne était mauvaise car j'ai copié des commandes qui devaient être exécutées à partir d'un e-mail.

0
borbar