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