Как я могу разрешить всем пользователям запускать данную команду через sudo?

25

Я знаю, как создать команду, которую может выполнить данный пользователь sudo. У меня есть заданная команда, которую я хочу разрешить любому пользователю выполнять через, sudoне вводя пароль. Что бы я положил в мой файл / etc / sudoers, чтобы это произошло?

мистифицировать
источник
Спасибо, что задали этот вопрос. Я заглянул man sudoersодин раз и не нашел ответа. Я посмотрел во man sudoersвторой раз, более тщательно. Тем не менее я потерпел неудачу, TMI! Затем, благодаря ответам здесь, я man sudoersнашел и выяснил, почему это работает. Похоже, вам сначала нужно знать, как это сделать, прежде чем вы сможете понять man sudoers. Вздох!
Тино

Ответы:

24

Такой раздел в вашем sudoers, вероятно, то, что вы хотите.

Cmnd_Alias NAMEOFTHIS=/usr/bin/program
ALL ALL=NOPASSWD: NAMEOFTHIS
Zoredache
источник
Разве это не дает доступ только к имени пользователя ? Могу ли я использовать вместо этого шаблон? Я хочу, чтобы любой прошедший проверку пользователь мог выполнить команду.
Джош
Затем используйте группу, членами которой они являются.
Broam
Благодарность! Клянусь, я попробовал это, но я забыл пробел, поэтому он не работал!
Джош
1
Если бы не все пользователи, я бы добавил группу просто потому, что это членство в чем-то, что вы хотите отслеживать - кто может sudoтаким образом.
Broam
1
Если вы действительно не хотите добавлять группу (лучше меня, почему бы и нет) и вам все еще нужны отдельные пользователи, используйте User_Alias SOMEUSERS = user1, user2.
Бретт Райан
18

Вы можете рассмотреть бит SUID . Некоторые программы требуют привилегий суперпользователя и используют бит SUID, например passwd.

Если sudo - лучший выбор для вас, вы можете использовать:

ALL ALL=NOPASSWD: /path/to/command
сигнализатор
источник
3
Это сценарий оболочки, который перезапускает локальный кеширующий сервер имен ... поэтому SUID не будет работать в этом случае, верно?
Джош
Зоредаче побил меня за то время, которое потребовалось мне, чтобы проверить мое рекомендуемое решение. =)
Warner
Пока он одновременно преследовал меня за публикацию такого простого вопроса, не меньше!
Джош
1
@Josh: тогда не задавай простых вопросов :-)
Барт Сильверстрим
2
@Josh: на самом деле звучит как аккуратная особенность. Multiharassitasking.
Барт Сильверстрим