Файл в/etc/sudoers.d/, не распознанном

Выполняя новую установку сервера Ubuntu 16.04.1, я пытался включить файл /etc/sudoers.d/ дать пользовательские полномочия пользователя root для определенной команды.

Я добавил файл /etc/sudoers.d/servicetest со следующим содержанием:

servicetest ALL = (root) NOPASSWD: /bin/systemctl status *

Файл /etc/sudoers оставлен нетронутым. Это содержит #includedir /etc/sudoers.d как последняя строка. Эта установка, к сожалению, не работает при выполнении соответствующей команды с sudo как пользователь servicetest, Меня все еще просят относительно пароля. Однако, если я перемещаю содержание файла /etc/sudoers.d/servicetest в конец /etc/sudoers, все работает как ожидалось.

Какова могла быть причина этой проблемы? Как я могу вложить файлы /etc/sudoers.d/ работа?

8
задан 27 October 2016 в 21:25

4 ответа

Проблема не была, как отвечено IanC, вызванный полномочиями файла (sudo счастливо принимает файл, принадлежавший root:root 0644, как я могу подтвердить теперь, хотя это должно, конечно, быть root:root 0440 из соображений безопасности!), но новой строкой в конце файла, которому предшествовала строка стиля окон, заканчивающаяся (\r\n).

sudo только принимает \n как окончания строки.

3
ответ дан 23 November 2019 в 05:35

По-видимому, файлы, которые включены в /etc/sudoers файл, должны иметь 0440 полномочий из соображений безопасности. Тот путь только базируется, может отредактировать файл, и только владелец и члены группы владельца могут считать его, делая его менее вероятно, что файл будет использоваться в качестве попытки нарастить полномочия.

можно проверить требования к включенному файлу на /etc/sudoers.d/README, но два других требования - то, что имя файла не должно запускаться с . (скрытые файлы) или заканчиваться ~ (конвенция для файлов резервных копий).

Кредиты к @steeldriver для подтверждения теории и нахождения /etc/sudoers.d/README файл!

7
ответ дан 23 November 2019 в 05:35

В моем CentOS 7 система не распознала бы файл, если бы это имело точку на свое имя. Например:

/etc/sudoers.d/user.perms                  # This file doesn't work
/etc/sudoers.d/userperms                   # This file does
1
ответ дан 23 November 2019 в 05:35

Я столкнулся с той же проблемой с @Guillermo Prandi в Ubuntu 20.04.

Если я создам файл с расширением .conf, он не будет работать. Но если .conf удалить, все работает хорошо.

Я сомневаюсь, что файл 99-snapd.conf работает нормально.

Как /etc/sudoers.d/README, там сказано, «что не заканчиваются на «~» или содержат «.» характер . "

@IanC написал, что "имя файла не должно начинаться с . (скрытые файлы)", но я предполагаю, что это могло быть обновлено в новой версии.

2
ответ дан 5 October 2020 в 08:11

Другие вопросы по тегам:

Похожие вопросы: