Jak przyznać uprawnienia sudo tylko określonym plikom skryptów?

17

Chciałbym, aby użytkownik miał uprawnienia sudo (bez sprawdzania hasła) do kilku skryptów powłoki w określonym katalogu (w moim przypadku /usr/local/tomcat7/bin) i nigdzie indziej. Jaki jest najprostszy sposób na osiągnięcie tego?

/etc/sudoersWydawało się, że coś takiego nie działa:

jsmith ALL=(ALL) NOPASSWD: /usr/local/tomcat7/bin
Jonik
źródło

Odpowiedzi:

22

Myślę, że już prawie jesteś. umieść /na końcu specyfikacji katalogu

jsmith ALL=(ALL) NOPASSWD: /usr/local/tomcat7/bin/

Ze strony podręcznika sudoers

Katalog to w pełni kwalifikowana nazwa ścieżki kończąca się na „/”. Gdy określisz katalog w Cmnd_List, użytkownik będzie mógł uruchomić dowolny plik w tym katalogu (ale nie w żadnym z jego podkatalogów).

użytkownik9517
źródło
Dzięki (do obu odpowiedzi), udało się! Uwaga do siebie: konieczności bezpośrednio powoływać skrypty (np sudo catalina.sh stop) - to nie działa: sudo sh catalina.sh stop.
Jonik
7

Dodaj ukośnik „/” na końcu ścieżki.

jsmith ALL=(ALL) NOPASSWD: /usr/local/tomcat7/bin/
h0tw1r3
źródło