Создание нового пользователя с привилегиями sudo в Ubuntu 22.04

green and black digital device

На сервере Ubuntu 22.04 удобнее не работать постоянно под root, а завести отдельного пользователя и выдать ему sudo. Ниже — короткий чеклист: создать пользователя, добавить в группу sudo, проверить права, при необходимости поправить sudoers через visudo, снять права или удалить учётку.

Что понадобится

  • Доступ root или уже существующий sudo-пользователь
  • Ubuntu 22.04 (команды те же на 20.04/24.04)
  • Имя нового пользователя, например deploy

1. Создать пользователя

Через терминал (предпочтительный вариант на сервере):

sudo adduser имя_пользователя

Утилита спросит пароль и необязательные GECOS-поля (ФИО, телефон — можно пропускать Enter). Будет создан домашний каталог /home/имя_пользователя и базовая группа.

На десктопе с GUI: «Параметры» — «Пользователи» — добавить пользователя. Для серверов и VPS обычно достаточно CLI.

2. Добавить в группу sudo

В Ubuntu права администратора даёт членство в группе sudo:

sudo usermod -aG sudo имя_пользователя

Флаг -aG добавляет группу, не затирая остальные. Чтобы группы подхватились, пользователь должен перелогиниться (новый SSH-сеанс или reboot — по ситуации).

3. Проверить права

Список правил sudo для пользователя:

sudo -l -U имя_пользователя

Проверка «живой» сессии (под этим пользователем):

su - имя_пользователя
sudo -v
groups

В groups должна быть sudo. sudo -v обновит timestamp пароля; если пароль принят — базовый sudo работает.

4. Точечные правила в sudoers

Группы sudo обычно достаточно. Правки в sudoers нужны, если хотите NOPASSWD, ограничение команд или отдельные алиасы. Редактируйте только через visudo — он ловит синтаксические ошибки и не даёт случайно отрезать себе доступ:

sudo visudo

Пример: пользователь может выполнять всё без повторного пароля (удобно для CI/автоматики, на личном ноутбуке часто избыточно):

имя_пользователя ALL=(ALL) NOPASSWD: ALL

Лучше класть такие правила в drop-in, а не в основной файл:

sudo visudo -f /etc/sudoers.d/имя_пользователя

Права на файл в /etc/sudoers.d/ должны быть строгими (обычно 0440), иначе sudo может игнорировать include.

5. Снять sudo или удалить пользователя

Убрать из группы sudo:

sudo deluser имя_пользователя sudo
# либо:
sudo gpasswd -d имя_пользователя sudo

Удалить учётку (домашний каталог — по флагу):

sudo deluser --remove-home имя_пользователя

Если остались файлы вне home — проверьте вручную. Не удаляйте единственного sudo-пользователя, пока не убедитесь, что root/другой админ доступен.

Частые вопросы

Что такое sudo? Утилита, которая позволяет обычному пользователю выполнять отдельные команды с правами root после проверки политики (sudoers) и, как правило, пароля.

Почему после usermod «sudo: command not found» или «not in sudoers»? Чаще всего не перелогинились, опечатка в имени или пакет sudo не установлен (минимальные образы). Поставьте sudo apt install sudo из-под root и повторите.

Нужен ли reboot? Обычно нет: достаточно нового login-сеанса. Reboot — крайний случай, если сессии «залипли».

Источники и ссылки


Комментарии загружаются…