Sudo (superuser do) – это командная утилита, позволяющая доверенным пользователям запускать команды от имени root. Это необходимо для запуска программы, требующей root-доступа. Это могут делать только определенные пользователи из группы sudo / wheel. Если неавторизованный пользователь попытается выполнить команду, sudo уведомит администратора по электронной почте. По умолчанию это предупреждение сохраняется в учетной записи root. Любому пользователю, выполняющему команду, будет предложено ввести пароль. После аутентификации sudo создаст временную метку для этого пользователя. С этого момента пользователь может выполнять команды в течение пяти минут. По истечении пяти минут пользователю будет предложено ввести пароль. Если вам нужно перезаписать этот льготный период, вы можете сделать это, изменив настройки в файле /etc/sudoers. В этой статье мы покажем вам, как добавить пользователя в sudoers в Debian 12 в виде пошагового руководства.
# – данные команды должны выполняться с правами root либо непосредственно как пользователь root, либо с помощью команды sudo $ – данные команды должны выполняться как обычный пользователь
Сначала войдите на свой сервер Debian 12 через SSH как пользователь root:
ssh root@IP_Address -p Port_number
Вы должны заменить ‘IP_Address‘ и ‘Port_number‘ на соответствующий IP-адрес вашего сервера и номер SSH-порта. Замените ‘root’ на другого пользователя вашей системы Debian 12 с правами sudo.
Вы можете проверить, установлена ли у вас на сервере соответствующая версия Debian, с помощью следующей команды:
# lsb_release -a
Вы должны получить следующий вывод:
No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 12 (bookworm) Release: 12 Codename: bookworm
Файл /etc/sudoers содержит набор правил, определяющих, какие пользователи или группы имеют права sudo. Этот файл позволяет предоставлять конкретный доступ к командам и устанавливать собственные политики безопасности. Вы можете настроить доступ пользователей, отредактировав файл sudoers или создав новый файл конфигурации в каталоге /etc/sudoers.d. Файл sudoers вызывает эти файлы в этом каталоге.
Всегда используйте команду visudo для редактирования файла /etc/sudoers; не редактируйте его напрямую в текстовом редакторе. При сохранении файла эта команда проверяет его на наличие синтаксических ошибок. Если есть ошибки, файл не сохраняется. Если вы редактируете файл в обычном текстовом редакторе, синтаксические ошибки могут привести к потере доступа sudo.
Visudo использует редактор, указанный в переменной среды EDITOR; по умолчанию используется Vim. Если вы хотите редактировать файл с помощью nano, измените переменную, выполнив:
# EDITOR=nano visudo
При добавлении новых пользователей или групп в файл sudoers важно указать имя пользователя или группы, хосты, пользователей, от имени которых они могут запускать команды, и команды для выполнения. Допустим, вы хотите разрешить пользователю запускать команды sudo без запроса пароля. Для достижения этой цели давайте откроем файл /etc/sudoers:
# visudo
Прокрутите вниз до конца файла и добавьте следующую строку:
username ALL=(ALL) NOPASSWD:ALL
Замените “имя пользователя” на существующего системного пользователя на вашем компьютере Debian 12. Затем сохраните файл и выйдите из редактора. Мы можем использовать тег NOPASSWD для выполнения определенных команд без запроса пароля пользователя, что может быть полезно для автоматизации, но может увеличить количество уязвимостей в системе безопасности.
Другой пример – разрешить пользователю запускать только определенные команды через sudo. Например, чтобы разрешить только команды mkdir и rmdir, вы могли бы использовать:
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. Имя файла не имеет значения, но обычной практикой является присвоение имени файлу в соответствии с именем пользователя.
Помимо использования команды visudo для добавления пользователей в sudoers, мы также можем использовать другой инструмент под названием “usermod”. Usermod – это команда, которая изменяет учетные записи пользователей в системе Linux. Чтобы добавить пользователя в группу sudo с помощью команды инструмента usermod, выполните следующее:
# usermod -aG sudo username
Объяснение:
Итак, если у вас есть существующий системный пользователь с именем «master», вы можете добавить его в sudoers, выполнив эту команду:
# usermod -aG sudo master
Вот и всё! Теперь вы можете войти на свой сервер как «главный пользователь» и запускать команды sudo.
Поздравляем! Вы узнали, как добавить пользователя в sudoers. Пожалуйста, обратите внимание, что важно и необходимо ограничить привилегии sudo, чтобы уменьшить потенциальные уязвимости в системе безопасности. Также важно назначать разрешения, которые строго необходимы для выполнения конкретных задач, и по возможности избегать широкого доступа. Используйте псевдонимы команд для определения разрешённых команд и псевдонимы пользователей для категоризации разрешений на основе ролей, а не отдельных пользователей, что способствует более масштабируемой и управляемой системе.
Конечно, если вы являетесь одним из наших клиентов, использующих хостинг Debian, вам не нужно добавлять пользователя в sudoers на вашем сервере Debian — просто обратитесь к нашим администраторам, расслабьтесь и отдыхайте. Наши администраторы помогут вам добавить пользователя в sudoer сразу же по запросу. Наши опытные системные администраторы доступны круглосуточно и без выходных и сразу же обработают ваш запрос. Вам нужно только отправить запрос.
Если вам понравилась эта статья о том, как добавить пользователя в sudoers в Debian 12, пожалуйста, поделитесь ею со своими друзьями в социальных сетях с помощью кнопок ниже или просто оставьте комментарий в разделе комментариев. Спасибо.