Как предоставить права sudo только определенным файлам сценария?


17

Я бы хотел, чтобы у пользователя были права sudo (без проверки пароля) на пару сценариев оболочки в определенном каталоге (в моем случае /usr/local/tomcat7/bin), и ни на что другое. Какой самый простой способ сделать это?

/etc/sudoersКажется, что-то вроде этого не работает:

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

Ответы:


22

Я думаю, что ты почти там. поставить /в конце вашей спецификации каталога

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

Со страницы руководства sudoers

Каталог - это полное имя пути, оканчивающееся на '/'. Когда вы укажете каталог в Cmnd_List, пользователь сможет запустить любой файл в этом каталоге (но не в каких-либо его подкаталогах).


Спасибо (обоим ответчикам), получил это работает! Примечание для себя: нужно вызывать скрипты непосредственно (например sudo catalina.sh stop) - это не работает: sudo sh catalina.sh stop.
Йоник

7

Добавьте косую черту / в конец пути.

jsmith ALL=(ALL) NOPASSWD: /usr/local/tomcat7/bin/
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.