Я не могу понять разницу в этих двух командах
USER ALL=(ALL) NOPASSWD: ALL И USER ALL=(OTHERUSER) NOPASSWD: ALL
Может кто-нибудь объяснить изменение ()? Спасибо
Я не могу понять разницу в этих двух командах
USER ALL=(ALL) NOPASSWD: ALL И USER ALL=(OTHERUSER) NOPASSWD: ALL
Может кто-нибудь объяснить изменение ()? Спасибо
Из man 5 sudoers:
Базовая структура пользовательской спецификации - это
who where = (as_whom) what.
А также
Зарезервированное слово
ALL- это встроенный псевдоним, который всегда приводит к успешному совпадению.
В вашем случае разница в поле (as_whom) :
(ALL) означает, что USER может выполнять команды от имени любого пользователя.(OTHERUSER) означает, что USER может запускать команды как OTHERUSER (например, sudo -u OTHERUSER whoami).
Обратите внимание, это не означает, что USER не может запускать команды как YETANOTHERUSER . Если USER попытается запустить что-либо как YETANOTHERUSER тогда строка с (OTHERUSER) не будет совпадать, и анализатор продолжит работу; некоторые более поздние строки могут совпадать.