
sudo — это программа командной строки, которая позволяет доверенным пользователям выполнять команды от имени root или другого пользователя.
В этой статье мы покажем вам два способа предоставления пользователю привилегий sudo. Первый способ — добавить пользователя в файл sudoers . Этот файл содержит информацию, определяющую, каким пользователям и группам предоставлены привилегии sudo, а также уровень этих привилегий.
Второй вариант — добавить пользователя в группу sudo, указанную в файле sudoers . По умолчанию в дистрибутивах на базе Debian, таких как Ubuntu и Linux Mint, членам группы sudo предоставляется доступ к sudo.
Добавление пользователя в группу sudo
В Ubuntu самый простой способ предоставить пользователю привилегии sudo — добавить его в группу sudo. Члены этой группы могут выполнять любые команды от имени root через sudo , при этом им будет предложено авторизоваться с помощью sudo .
Мы предполагаем, что такой пользователь уже существует. Если вы хотите создать нового пользователя, ознакомьтесь с этим руководством.
Чтобы добавить пользователя в группу, выполните команду ниже от имени пользователя root или другого пользователя sudo. Замените «username» на имя пользователя, которому вы хотите предоставить разрешения.
usermod -aG sudo username
Предоставление доступа sudo с использованием этого метода достаточно для большинства случаев использования.
Чтобы убедиться, что у пользователя есть привилегии sudo, выполните команду whoami :
sudo whoami
Вам будет предложено ввести пароль. Если у пользователя есть доступ sudo, команда выведет «root»:
root
Если вы получили сообщение об ошибке «пользователь отсутствует в файле sudoers», это означает, что у пользователя нет прав sudo.
Добавление пользователя в файл sudoers
Права sudo для пользователей и групп определяются в файле /etc/sudoers . Добавление пользователя в этот файл позволяет предоставить персонализированный доступ к командам и настроить политики безопасности.
Вы можете настроить доступ пользователя к sudo, изменив файл sudoers или создав новый файл конфигурации в каталоге /etc/sudoers.d . Файлы из этого каталога включены в файл sudoers.
Всегда используйте visudo для редактирования файла /etc/sudoers . Эта команда проверяет файл на наличие синтаксических ошибок при его сохранении. При наличии ошибок файл не сохраняется. При открытии файла в текстовом редакторе синтаксическая ошибка может привести к потере доступа к sudo.
Обычно visudo использует vim для открытия файла /etc/sudoers . Если у вас нет опыта работы с vim и вы хотите редактировать файл в nano , измените редактор по умолчанию, выполнив:
EDITOR=nano visudo
Предположим, вы хотите разрешить пользователю выполнять команды sudo без запроса пароля. Для этого откройте файл /etc/sudoers :
visudo
Прокрутите файл до конца и добавьте следующую строку:
/etc/sudoers
username ALL = (ALL) NOPASSWD:ALL
Сохраните файл и выйдите из редактора . Не забудьте заменить «username» на имя пользователя, которому хотите предоставить доступ.
Другой типичный пример — разрешить пользователю выполнять только определённые команды через sudo . Например, чтобы разрешить только команды mkdir и rmdir , используйте:
/etc/sudoers
username ALL = (ALL) NOPASSWD:/bin/mkdir,/bin/rmdir
Вместо редактирования файла sudoers вы можете добиться того же результата, создав новый файл с правилами авторизации в каталоге /etc/sudoers.d . Добавьте в него то же правило, что и в файл sudoers:
echo "username ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/username
Такой подход упрощает управление привилегиями sudo. Имя файла не имеет значения. Имя файла обычно совпадает с именем пользователя.
Заключение
Предоставление пользователю доступа sudo в Ubuntu — простая задача: все, что вам нужно сделать, это добавить пользователя в группу «sudo».
Если у вас есть вопросы, не стесняйтесь оставлять комментарии.
Связанные руководства