GNU/Linux >> Tutoriels Linux >  >> Linux

Exécuter automatiquement le script bash sous les privilèges d'un autre utilisateur

Alors ai-je bien compris.

L'utilisateur "bla" veut exécuter une commande en tant qu'utilisateur "blub" ?

Alors quelque chose comme ça pourrait fonctionner :

sudo -u blub /path/to/command

Si vous avez besoin que cela soit fait sans qu'un mot de passe vous soit demandé, ajoutez la ligne suivante à /etc/sudoers (via la commande visudo) :

bla    ALL=(blub) NOPASSWD: /path/to/command

vous pouvez travailler avec les autorisations de bit SUID et SGID (notez que cela peut être très dangereux)

donnez les permissions d'exécuter ce fichier à un groupe auquel appartient l'utilisateur auquel vous exécutez le script, et configurez via SUID toute personne qui exécute ce script pour l'exécuter en tant qu'utilisateur propriétaire du script

sudo chmod 4751 /path/to/my/file
sudo chgrp somegroup /path/to/my/file

Ensuite, il vous suffit d'exécuter le script en tant que userB qui est membre de un groupe et il sera exécuté avec comme userA et un groupe

ls -l /path/to/my/file
-rwsr-xr-- userA somegroup /path/to/my/file

Linux
  1. Pourquoi le script Bash ne reconnaît-il pas les alias ?

  2. Comment exécuter la commande avant la connexion de l'utilisateur sous Linux ?

  3. Comment puis-je exécuter une série de commandes dans un sous-shell bash en tant qu'autre utilisateur utilisant sudo ?

  4. Comment puis-je faire sonner la cloche audio dans un script bash exécuté sous l'écran gnu?

  5. Script bash pour supprimer le fichier le plus ancien d'un dossier

Comment exécuter la commande bash avec les privilèges sudo en Java ?

Supprimez tous les fichiers sauf les 3 plus récents dans le script bash

Comment exécuter du code dans le shell Django par un script python externe ?

Comment exécuter un script bash ?

Exécuter une partie d'un script bash en tant qu'utilisateur différent

Comment laisser l'utilisateur exécuter une commande contenant des guillemets dans sudoers ?