В чем разница между добавлением пользователя в /etc/sudoers
и usermod -a -G sudo
? Какой метод следует использовать для предоставления sudo?
Если вы можете этого избежать, никогда не предоставляйте привилегии sudo отдельным пользователям. Всегда предоставляйте привилегии группа а затем добавьте пользователей в эту группу.
Для серверов на базе Ubuntu вместо добавления строк в /etc/sudoers
, добавить фрагменты конфигурационного файла в /etc/sudoers.d
. Это более гибкий, легкий для понимания, более устойчивый к обновлениям и лучше работает с системами, управляемыми системами управления конфигурациями.
ПРИМЕЧАНИЕ: никогда не редактируйте /etc/sudoers
прямо. Вместо этого используйте visudo
, который будет выполнять проверку синтаксиса ваших правок, не позволяя вам нарушить конфигурацию sudo с помощью недопустимого синтаксиса.
Я только что нашел этот лакомый кусочек ... кажется, вам нужно быть особенно осторожным с использованием -G
вариант в Ubuntu, в частности в сочетании -g
вариант. Так:
usermod -aG
для добавления пользователя (ей) в группу. $ sudo
visudo
команда (автоматически вызывает привилегированный редактор с проверкой синтаксиса).Вот информация о -aG
вариант на Ubuntu, взятый отсюда http://ubuntuforums.org/showthread.php?t=1240477:
'Я читаю Wiley "Командная строка Linux и Библия сценариев" - и они сказали, что usermod -G «добавляет» группу к любой учетной записи пользователя, которую вы изменяете. Я обнаружил, что это неверно в Ubuntu, не знаю, просто ли это по-другому в других дистрибутивах, или опечатка в книге. Он удаляет вас из ВСЕХ других групп, к которым вы принадлежите, кроме группы пользователей по умолчанию (измененной параметром -g). Мне удалось удалить себя из группы администраторов, и я больше не мог ничего делать. Слава богу, за режим восстановления ... '
Правильный вариант - usermod -aG. Урок выучен...
Вы не говорите нам, насколько велика ваша среда, но если это более чем одна машина, вы также можете рассмотреть настройка sudo
используя LDAP s альтернатива локальному редактированию sudoers (либо через visudo
или используя /etc/sudoers.d
метод фрагментов).
Конфигурация LDAP - это проверенный способ убедиться, что на нескольких машинах одинаковые sudo
конфигурации и представляет собой красивую унифицированную среду (с централизованным управлением важным механизмом авторизации). В качестве бонуса, если вы уже используете LDAP (или AD) для аутентификации / авторизации в своей среде, вы можете воспользоваться преимуществами существующей инфраструктуры (а если вы этого не сделаете, вам следует серьезно подумать об этом - централизация имеет много преимуществ).
Все, что люди уже сказали в других ответах о создании авторизованных групп, по-прежнему остается в силе - это проще, поскольку вы увеличиваете масштаб для предоставления привилегий группе и управления членством в группе, чем с управлением правами для отдельных пользователей.