GNU/Linux >> Linux Esercitazione >  >> Linux

Esegui automaticamente lo script bash con i privilegi di un altro utente

Quindi ho capito bene.

L'utente "bla" vuole eseguire un comando come Utente "blub" ?

Allora qualcosa del genere potrebbe funzionare:

sudo -u blub /path/to/command

Se hai bisogno che ciò avvenga senza che ti venga chiesta una password, aggiungi la seguente riga a /etc/sudoers (tramite il comando visudo):

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

puoi lavorare con i permessi di bit SUID e SGID (nota che questo può essere molto pericoloso)

dai i permessi per eseguire questo file a un gruppo a cui appartiene l'utente a cui stai eseguendo lo script e imposta tramite SUID chiunque esegua questo script per eseguirlo come utente che possiede lo script

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

Quindi, devi solo eseguire lo script come userB chi è membro di un gruppo e verrà eseguito con as userA e un gruppo

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

Linux
  1. Perché lo script Bash non riconosce gli alias?

  2. Come eseguire il comando prima dell'accesso dell'utente su Linux?

  3. Script Bash per rimuovere il file più vecchio da una cartella?

  4. Script Bash - Come leggere l'input dell'utente

  5. Come posso eseguire una serie di comandi in una subshell bash come un altro utente usando sudo?

Come faccio a conoscere il nome del file di script in uno script Bash?

Pipe da/verso gli appunti nello script Bash

Come aggiungere automaticamente account utente E password con uno script Bash?

Esegue lo script bash dall'URL

Come eseguire il comando bash con privilegi sudo in Java?

Come posso suonare il campanello audio all'interno di uno script bash in esecuzione sotto lo schermo di gnu?