Представь, что твой сервер — это многоэтажный дом. По умолчанию там живет только супер-администратор (root). Но пускать всех в одну квартиру — плохая идея. Давай разберем, как создавать отдельных "жильцов" — пользователей Linux — с правильными правами и паролями, используя терминал. Это основа безопасности и грамотной организации любой системы, будь то Ubuntu, Astra Linux, Alt Linux или любой другой дистрибутив.
Базовые команды: useradd vs adduser
В создании пользователя Linux есть два главных инструмента. useradd — низкоуровневая утилита, которая просто создает запись. adduser — интерактивный скрипт-обертка, который задает вопросы и делает всё за тебя.
| Команда | Дистрибутивы | Уровень | Рекомендация |
|---|---|---|---|
useradd |
Все (базовая утилита) | Низкий (только запись в системные файлы) | Для скриптов и тонкой настройки |
adduser |
Debian/Ubuntu, Astra Linux (часто) | Высокий (интерактивный, создает домашнюю папку, запрашивает пароль) | Для ручного создания нового пользователя Linux в терминале |
Создание пользователя Linux через терминал: пошаговый разбор
Давай создадим пользователя alex с помощью adduser. Это самый простой способ создания пользователя в Linux через терминал.
sudo adduser alex
Система последовательно запросит:
- Пароль и его подтверждение (символы не отображаются).
- Дополнительную информацию (ФИО). Можно пропускать, нажимая Enter.
- Подтверждение корректности введенных данных (Y/n).
sudo перед adduser или useradd, если ты не root.
Команда для создания пользователя в Linux: тонкая настройка с useradd
Если нужен полный контроль, используй useradd. Вот создание пользователя maria с домашней директорией, указанной оболочкой и основной группой developers.
sudo useradd -m -s /bin/bash -g developers maria
После этого нужно отдельно задать пароль командой passwd:
sudo passwd maria
Это и есть классическое создание пароля пользователя Linux.
Работа с группами пользователей
Пользователи объединяются в группы для удобного управления правами. Сначала создадим группу, потом добавим в нее пользователя.
Создание группы пользователей Linux
sudo groupadd devops
Добавление пользователя в группу (или несколько)
sudo usermod -aG devops,docker alex
Ключ -aG означает append to Groups — добавить к существующим группам. Без -a пользователь будет удален из всех других групп.
Особенности дистрибутивов: Astra Linux и Alt Linux
Создание пользователя Astra Linux
Процесс создания пользователя Astra Linux через терминал идентичен Debian-подобным системам. Можно использовать adduser. Для создания пользователя Astra Linux терминал также поддерживает графические утилиты, но в серверных сценариях команды те же.
sudo adduser officer_ivanov
Создание пользователей Alt Linux
В Alt Linux, как и в других RPM-дистрибутивах, чаще используется useradd. Рекомендуемый подход для создания пользователей Alt Linux:
sudo useradd -m -s /bin/bash -G wheel sergey
sudo passwd sergey
Повышение прав: sudo и root
Linux создание пользователя sudo
Чтобы дать пользователю право выполнять команды с sudo, его нужно добавить в группу sudo (в Debian/Ubuntu/Astra) или wheel (в RHEL/Alt Linux).
# Для Debian, Ubuntu, Astra Linux
sudo usermod -aG sudo alex
# Для RHEL, CentOS, Alt Linux
sudo usermod -aG wheel sergey
Прямое создание root пользователя Linux (НЕ РЕКОМЕНДУЕТСЯ)
Создать второго root-пользователя нельзя (UID=0 только у одного аккаунта). Но можно изменить UID существующего пользователя на 0, что фактически сделает его root. Этого следует избегать.
Автоматизация: создание пользователя скриптом Linux
Для массового развертывания или конфигурации инфраструктуры как кода используется создание пользователя скриптом Linux. Вот простой пример bash-скрипта:
#!/bin/bash
# Скрипт для создания пользователя с предустановленными параметрами
USERNAME="deploy"
PASSWORD="$(openssl rand -base64 12)" # Генерация случайного пароля
# Создание пользователя
sudo useradd -m -s /bin/bash $USERNAME
# Установка пароля
echo "$USERNAME:$PASSWORD" | sudo chpasswd
# Добавление в группу sudo
sudo usermod -aG sudo $USERNAME
echo "Пользователь $USERNAME создан."
echo "Пароль: $PASSWORD" # В реальном скрипте пароль нужно передавать безопасно!
Часто задаваемые вопросы (FAQ)
Чем отличается useradd от adduser?
useradd — низкоуровневая системная команда, которая только добавляет запись в /etc/passwd. adduser — Perl-скрипт, который использует useradd, но также создает домашнюю директорию, копирует скелетные файлы (/etc/skel), интерактивно запрашивает пароль и дополнительную информацию. Для новичков adduser удобнее.
Как удалить пользователя Linux?
Используй команду userdel. sudo userdel username удалит запись, но оставит домашнюю директорию. sudo userdel -r username удалит и пользователя, и его домашнюю директорию, и почтовый ящик.
Где хранятся данные о пользователях и группах?
/etc/passwd— основные данные пользователей (логин, UID, GID, оболочка)./etc/shadow— зашифрованные пароли (доступен только root)./etc/group— данные о группах./etc/sudoers— настройки прав sudo.
Как посмотреть, в каких группах состоит пользователь?
Команда groups username или id username покажет список групп и идентификаторы (UID, GID).
Заключение
Ты освоил фундаментальный навык администрирования Linux — создание нового пользователя Linux. Ключевые моменты: используй adduser для простоты, useradd для автоматизации, всегда задавай надежный пароль, управляй правами через группы и выдавай sudo осознанно. Эти принципы едины для Ubuntu, Astra Linux, Alt Linux и других дистрибутивов. Теперь твой "серверный дом" будет в порядке: у каждого пользователя своя квартира, ключи и список разрешенных действий.