Sistema operativo: Arch Linux
Versione Linux: 4.16.11
Versione Sudo: 1.8.23
Di cosa ho bisogno :
- essere in grado di eseguire
any executable
con unasudo
richiesta di password - essere in grado di eseguire un eseguibile
/home/username/script.sh
, senza una richiesta di password.
Quando configuro in questo modo
username ALL=(ALL) NOPASSWD: /home/username/script.sh
Ho l'effetto desiderato sul script.sh
, ma non posso eseguirne nessun altro executable
con sudo
.
Esempio
$ sudo ./script.sh # runs fine!
Tenta qualcos'altro
$ sudo nano /etc/sudoers
[sudo] password for username:
Sorry, user username is not allowed to execute '/usr/bin/nano
/etc/sudoers' as root on hostname.
Sembra che questo sia il risultato della sostituzione ALL
con NOPASSWD
, e sembra che io abbia bisogno di entrambi. Se il sudoers
file ha ALL
per l'utente, posso eseguire quello che voglio con la richiesta della password
username ALL=(ALL) ALL
Ho provato a combinare ALL e NOPASSWD ma non ho avuto risultati
username ALL=(ALL) ALL, NOPASSWD: /home/username/script.sh
In questo modo richiede password script.sh
.
Posso avere entrambi?
NOPASSWD
opzioni dovrebbero essere utilizzate per gli eseguibili che non possono essere modificati dagli utenti, ad esempioifconfig
per un amministratore di rete.