Страницы

Поиск по вопросам

воскресенье, 12 мая 2019 г.

Как узнать, что именно разрешено делать через sudo?

Известно, что *nix-подобных ОС правила для sudo настраиваются в файле /etc/sudoers, но если в нём много разных правил для разных пользователей, особенно если используются алиасы/макросы, как удобно продиагностировать, что же именно разрешено делать через sudo определённому пользователю?


Ответ

Многие не знают, что sudo имеет встроенную возможность для удобной диагностики, для этого служит ключ -l
# sudo -l -U vasya-pupkin
Runas and Command-specific defaults for vasya-pupkin:
User vasya-pupkin may run the following commands on this host: (root) /usr/bin/tailf, /bin/ls, /usr/sbin/tcpdump (asterisk) NOPASSWD: /bin/mv
Если вызывать sudo -l без дополнительных ключей, будут показаны разрешенные в sudoers команды для текущего пользователя. Используя дополнительный ключ -U username можно посмотреть разрешенные команды для любого пользователя в системе (но только если смотрящий - root).
В приведённом примере пользователь vasya-pupkin может запускать tailf, ls и tcpdump от рута, а также от имени пользователя asterisk перемещать файлы (удобно, если нужно предоставить не-рутовому пользователю возможность манипулировать файлами, пренадлежащими третьему пользователю).

Комментариев нет:

Отправить комментарий