Создание пользователя и выдача прав sudo в Linux
Генератор паролей
Чтобы создать пользователя с правами администратора в Linux, нужны две команды: adduser для создания учётной записи и usermod -aG для добавления в группу sudo. Разберём подробно, включая различия между дистрибутивами.
Шаг 1. Создайте пользователя
На Debian и Ubuntu удобнее всего adduser — интерактивная утилита, которая создаёт домашнюю папку и запрашивает пароль:
sudo adduser deploy
Команда спросит пароль и опциональные данные (имя, телефон — можно пропустить, нажимая Enter).
На дистрибутивах без adduser используйте низкоуровневую useradd:
sudo useradd -m -s /bin/bash deploy
sudo passwd deploy
Флаг -m создаёт домашний каталог, -s задаёт оболочку.
Шаг 2. Выдайте права sudo
Административные права даёт членство в специальной группе.
Debian / Ubuntu — группа sudo:
sudo usermod -aG sudo deploy
CentOS / RHEL / Fedora — группа wheel:
sudo usermod -aG wheel deploy
Флаги важны: -a (append) добавляет группу, не удаляя существующие. Без -a пользователь будет исключён из всех остальных групп — распространённая ошибка.
Шаг 3. Проверьте права
Перезайдите под новым пользователем и выполните тестовую команду:
su - deploy
sudo whoami
Если вернулось root — права работают. Посмотреть все группы пользователя:
groups deploy
Выдача точечных прав через sudoers
Иногда нужно разрешить пользователю только конкретные команды без полного sudo. Используйте безопасный редактор visudo, который проверяет синтаксис:
sudo visudo -f /etc/sudoers.d/deploy
Добавьте строку — например, разрешить только перезапуск nginx:
deploy ALL=(ALL) NOPASSWD: /usr/bin/systemctl restart nginx
NOPASSWD убирает запрос пароля для этой команды. Файлы в /etc/sudoers.d/ подхватываются автоматически.
Как отозвать права sudo
Удалить пользователя из группы sudo:
sudo deluser deploy sudo
На CentOS:
sudo gpasswd -d deploy wheel
Удаление пользователя
Если учётная запись больше не нужна, удалите её вместе с домашней папкой:
sudo deluser --remove-home deploy
Сравнение дистрибутивов
| Действие | Debian/Ubuntu | CentOS/RHEL |
|---|---|---|
| Создать | adduser |
useradd -m |
| Группа админов | sudo |
wheel |
| Выдать права | usermod -aG sudo |
usermod -aG wheel |
| Отозвать | deluser user sudo |
gpasswd -d user wheel |
Частые вопросы
Чем adduser отличается от useradd?
adduser — дружелюбный интерактивный скрипт (создаёт папку, спрашивает пароль). useradd — низкоуровневая утилита, требует ручного указания флагов. На Ubuntu доступны обе.
Почему usermod без -a опасен?
Флаг -G без -a заменяет весь список групп пользователя указанным. Если забыть -a, пользователь потеряет членство в остальных группах. Всегда пишите -aG.
Как разрешить sudo без пароля?
Добавьте в файл /etc/sudoers.d/ строку с NOPASSWD. Делайте это только для доверенных учёток и конкретных команд — это снижает безопасность.
Изменения в группах применяются сразу? Нужно перелогиниться. Новая сессия пользователя увидит обновлённый список групп; в текущей они не появятся.
Итог
Создание пользователя с sudo — базовая операция при настройке любого сервера. Помните про различие групп sudo и wheel между дистрибутивами и всегда используйте -aG, чтобы не сбросить остальные группы.
Нужен сервер для практики? Возьмите VPS на Linux, оформите аренду VPS или закажите Администрирование серверов.
