Основы Linux: добавление и удаление shell‑пользователей в Ubuntu
Version: 1.0
Author: Daya Mukherjee
Last Edited: 4 июня 2014
Оглавление
- 1.1 Обзор
- 1.2 Введение в создание и удаление shell‑пользователей в Ubuntu
- 1.3 Как добавить shell‑пользователя в Ubuntu
- 1.4 Как удалить shell‑пользователя в Ubuntu
- 1.5 Краткое резюме
- Практические примеры и советы по безопасности
- Чек-листы и SOP
- Критерии приёмки
- Часто задаваемые вопросы
1.1 Обзор
Ubuntu — популярная система семейства Linux с удобным интерфейсом и богатым набором инструментов для настольных и серверных задач. Управление пользователями — одна из базовых операций для системного администратора: добавление, настройка прав и удаление пользователей.
Важно понимать: по умолчанию на многих серверах есть только root‑учётная запись. Работа под root опасна: случайные команды или скомпрометированный доступ приведут к серьёзным последствиям. Рекомендуется создавать непользовательские (непривилегированные) аккаунты для повседневных задач и выдавать привилегии sudo по необходимости.
1.2 Введение в создание и удаление shell‑пользователей в Ubuntu
Добавление и удаление пользователей — частые операции при развертывании сервера, смене сотрудников или пересмотре прав доступа. Этот материал даёт пошаговые команды и практические рекомендации по безопасному управлению учётными записями в Ubuntu.
Определения в одной строке:
- Пользователь: учётная запись в системе с UID и домашним каталогом.
- Привилегии sudo: временное или постоянное предоставление прав суперпользователя для выполнения защищённых команд.
1.3 Как добавить shell‑пользователя в Ubuntu
Если вы вошли как root, добавление нового пользователя выполняется просто:
adduser newuser
Если вы вошли как непользователь с правами sudo, используйте:
sudo adduser newuser
Выполнение команды запустит интерактивный мастер, где нужно:
- Шаг 1: задать и подтвердить пароль для нового пользователя.
- Шаг 2: по желанию указать дополнительные данные (поле можно пропустить клавишей Enter).
- Шаг 3: подтвердить введённые данные, согласившись (введите ‘y’).
После этого учётная запись создана, и пользователь сможет войти в систему с указанным паролем.
Назначение прав sudo новому пользователю (рекомендуется делать это выборочно):
- Добавить пользователя в группу sudo:
usermod -aG sudo newuser
- Или отредактировать sudoers через безопасный редактор visudo (далее подробнее).
Совет: для автоматизации при массовом создании учётных записей используйте не adduser, а useradd с набором опций, но adduser обеспечивает более удобный интерактивный поток и создаёт домашний каталог по умолчанию.
Пример с useradd (неинтерактивно):
useradd -m -s /bin/bash -G sudo -c "Имя или комментарий" newuser
passwd newuser
1.4 Как удалить shell‑пользователя в Ubuntu
Удалять неиспользуемые учётные записи следует регулярно. Базовая команда для удаления пользователя без удаления файлов:
deluser newuser
Если вы запускаете команду как непользователь с правами sudo:
sudo deluser newuser
Чтобы удалить и домашний каталог пользователя, используйте опцию –remove-home:
deluser --remove-home newuser
Или с sudo:
sudo deluser --remove-home newuser
Дополнительно проверьте и очистите следующее:
- crontab пользователя (sudo crontab -u newuser -l и затем sudo crontab -u newuser -r для удаления).
- почтовые ящики в /var/mail/newuser или в /var/spool/mail.
- файлы в других местах, принадлежащие UID данного пользователя (find / -uid UID -print).
Если у пользователя были права sudo через запись в файле sudoers или в отдельном файле в /etc/sudoers.d, удалите соответствующую строку через visudo:
visudo
Или как пользователь с sudo:
sudo visudo
Пример записи в sudoers, которую нужно удалить, если она относилась к пользователю:
root ALL=(ALL:ALL) ALL
newuser ALL=(ALL:ALL) ALL # DELETE THIS LINE
Удаление записи гарантирует, что при повторном создании учётной записи с тем же именем она не получит старых привилегий по ошибке.
1.5 Краткое резюме
Создание и удаление пользователей в Ubuntu выполняется командами adduser/deluser (или useradd/userdel для сценариев). Всегда проверяйте права sudo и дополнительные ресурсы пользователя (cron, почта, файлы). Используйте visudo для безопасного редактирования sudoers.
Практические советы по безопасности
- Минимизируйте работу под root; используйте sudo с аудитом.
- Привязывайте привилегии к группам, а не к отдельным именам учётных записей.
- Удаляйте домашние каталоги и почту только после бэкапа, если там могут быть важные данные.
- Отключайте SSH‑доступ для пользователей, которые не должны входить в систему через оболочку, через изменение их логина или shell на /usr/sbin/nologin.
Пример блокировки входа, не удаляя учётную запись:
usermod -s /usr/sbin/nologin newuser
Альтернативные подходы и когда они применимы
- useradd vs adduser: useradd — более низкоуровневая команда, подходит для автоматизации и скриптов. adduser — Perl‑скрипт с удобным интерфейсом для ручного использования.
- Управление доступом через LDAP/AD: если у вас центральный каталог пользователей, не создавайте локальные учётные записи, вместо этого управляйте пользователями там.
- Конфигурирование sudo через файлы в /etc/sudoers.d вместо редактирования основного файла sudoers упрощает откат изменений и аудит.
Модель принятия решений
Если задача — единичный локальный пользователь, используйте adduser.
Если нужно массовое создание, автоматизация или интеграция с внешним каталогом — используйте useradd или централизованные сервисы (LDAP, AD).
Правило безопасности: давать минимальные права, необходимые для выполнения задач (принцип наименьших привилегий).
Фактбокс
- Стандартные команды: adduser, deluser, useradd, userdel, usermod, passwd, visudo.
- Домашний каталог по умолчанию: /home/username.
- Файлы sudoers: /etc/sudoers и /etc/sudoers.d/*.
- Логи аутентификации: /var/log/auth.log.
Чек‑листы для ролей
Администратор (быстрая проверка перед удалением пользователя):
- выполнен бэкап данных пользователя;
- удалены cron‑задачи пользователя;
- проверены файлы в /var/mail и /var/spool/mail;
- удалены или обновлены записи в sudoers / /etc/sudoers.d;
- выполнена команда deluser –remove-home (если нужно).
Оператор (создание нового пользователя):
- добавлен через adduser или useradd;
- установлен безопасный пароль;
- добавлен в правильные группы (например, sudo если нужно);
- при необходимости создана запись в /etc/sudoers.d с минимальными правами;
- уведомление отправлено владельцу и службе поддержки.
SOP: добавить пользователя (короткая инструкция)
- Подключитесь к серверу как администратор с sudo.
- Выполните: sudo adduser newuser
- Задайте пароль и при необходимости заполните данные.
- При необходимости добавьте в группы: sudo usermod -aG group newuser
- Проверьте вход: sudo -l -U newuser (показать права sudo) или войдите в систему под новым пользователем.
SOP: удалить пользователя (короткая инструкция)
- Сделайте бэкап домашнего каталога, если нужно: sudo tar -czf /root/backup_newuser_home.tar.gz /home/newuser
- Удалите crontab: sudo crontab -u newuser -r
- Проверьте файлы, принадлежащие UID: sudo find / -uid UID -ls
- Удалите пользователя и домашний каталог при необходимости: sudo deluser –remove-home newuser
- Отредактируйте sudoers: sudo visudo и удалите соответствующие записи или файлы в /etc/sudoers.d.
Резервный план и откат
Если пользователь удалён по ошибке:
- Восстановите из бэкапа домашнего каталога (scp/tar/rsync).
- Если был удалён файл sudoers или запись, восстановите прежний файл из бэкапа или исправьте через visudo.
- Если UID используется в файловой системе, перепривяжите файлы к новому пользователю через chown.
Команда для восстановления владельца файлов после пересоздания пользователя с тем же UID:
chown -R newuser:newuser /path/to/files
Критерии приёмки
- Новый пользователь успешно входит в систему с заданным паролем.
- При необходимости пользователь имеет доступ к указанным группам и sudo (только там, где это разрешено).
- После удаления учётной записи её имя и UID более не присутствуют в /etc/passwd и /etc/shadow.
- Отсутствуют оставшиеся процессы, crontab или файлы, принадлежащие удалённому пользователю, если это требовалось по задаче.
Краткая справка по командам (cheat sheet)
- adduser username — добавить пользователя (интерактивно).
- useradd -m -s /bin/bash username — добавить пользователя без интерактива, создать домашний каталог.
- passwd username — установить пароль.
- usermod -aG group username — добавить пользователя в группу.
- deluser username — удалить пользователя без удаления домашнего каталога.
- deluser –remove-home username — удалить пользователя вместе с домашним каталогом.
- visudo — безопасно редактировать sudoers.
- find / -uid UID -print — найти файлы по UID.
Безопасность и дополнительные рекомендации
- Используйте двухфакторную аутентификацию (2FA) для SSH, когда это возможно.
- В деталях sudoers указывайте конкретные команды, а не ALL. Это снижает риск неправильного использования.
- Соблюдайте политику хранения паролей и автоматическое истечение паролей (chage). Пример установки срока действия пароля:
chage -M 90 username
- При временном доступе создавайте временные учётные записи с датой истечения:
chage -E 2025-12-31 tempuser
Часто задаваемые вопросы
В: Чем отличается adduser от useradd?
О: adduser — более удобный интерактивный скрипт; useradd — низкоуровневая утилита для автоматизации.
В: Удалил пользователя, а его файлы остались. Почему?
О: По умолчанию deluser не удаляет домашний каталог. Нужно использовать –remove-home. Также файлы могут находиться вне домашнего каталога и принадлежать UID, а не имени.
В: Как убрать у пользователя права sudo навсегда?
О: Удалите запись в /etc/sudoers или соответствующий файл в /etc/sudoers.d используя visudo, а затем удалите пользователя или группу, через которую выдавались права.
Итог: правильное управление учётными записями требует простых команд и проверок. Всегда применяйте принцип наименьших привилегий, делайте резервные копии перед удалением и используйте visudo для изменений привилегий.
Похожие материалы

Установка Google Play на Huawei — рабочие способы
Настройка WiKID 4.0 через Quick-setup

Трансляция Google+ Hangouts через On Air

Сократить твит быстро — Feathr.it

Очистить Gmail от рассылок с Cleanfox
