Быстрое cоздание пользователей в Linux (useradd, usermod, chsh)
Процесс добавления пользователя состоит из двух шагов: создания пользователя и настройки пароля. На первом шаге используется команда useradd c набором опций для настройки нового пользователя и его именем (логином):
useradd [как создать] [как назвать]
Эта команда имеет ряд настроек по умолчанию, которые задаются с помощью файлов /etc/default/useradd и /etc/login.defs Увидеть основные можно с помощью команды ключа -D:
# useradd -D GROUP=100 HOME=/home INACTIVE=-1 EXPIRE= SHELL=/bin/sh SKEL=/etc/skel CREATE_MAIL_SPOOL=no
- GROUP - GID группы, в которую пользователь будет добавлен после создания
- HOME - базовый каталог, в котором будет размещена директория пользователя
- INACTIVE - указывает время до блокировки пользователя, когда его пароль станет недействителен. Значение «-1» отключает опцию
- EXPIRE - дата, до которой действителен аккаунт. По умолчанию не установлена — то есть без ограничений
- SHELL - используется для настройки доступа к командной оболочке
- SKEL - содержит путь к директории, в которой хранятся файлы по умолчанию. После создания пользователя они будут автоматически скопированы в его домашнюю папку
- CREATE_MAIL_SPOOL - определяет, нужно ли создать папку для писем этого пользователя в /var/spool/mail/
Все эти настройки применяются, если использовать самый простой вариант команды создания пользователя без параметров:
useradd test-user
Но обычно нам требуется добавить пользователя со специфическими настройками — для этого используется расширенный вариант этой команды. Перечислим основные опции:
- -m создаёт указанную домашнюю директорию, если она ещё не существует
- -d /home/test-user устанавливает /home/test-user в качестве домашней директории
- -c "Имя Фамилия" добавляет комментарий. Например, с именем пользователя
- -g test указывает группу, в которую попадёт пользователь после создания. Можно использовать с GID или именем группы. Указанная группа должна существовать. Используется в сочетании с ключом -N (отменяет автоматическое создание группы с именем пользователя)
- -G users,wheel указывает список дополнительных групп пользователя. Они перечисляются через запятую без пробелов
- -s /bin/bash позволяет настроить доступ к shell
- -r создаёт системного пользователя. Используется, когда вам нужно настроить службу на работу из-под конкретного пользователя. По умолчанию данные таких пользователей не вносятся в /etc/shadow, для них не создаётся домашняя папка
- -u позволяет указать свой UID, который будет присвоен новому пользователю. В качестве UID указывается положительное целое число. UID должен быть уникален
- -e 2022-01-01 указывает дату, до которой аккаунт будет активен. Дата задаётся в формате YYYY-MM-DD
- -f 3 указывает количество дней до блокировки пользователя, когда его пароль станет недействителен
Пример с часто используемыми ключами useradd:
# useradd -m testbash -s /bin/bash
, где ключ -m создает домашнюю директорию пользователя; -s задает оболочку пользователя.
Пример с использованием большого количества ключей useradd:
useradd -m -u 666 -d /home/users/test-user -c "Тестовый пользователь" -e 2060-01-01 -s /bin/bash test-user
Очень важно после создания пользователя настроить для него надёжный пароль. Для этого нужно использовать команду passwd:
passwd test-user
Система предложит ввести и подтвердить пароль. На этом процесс создания пользователя можно считать завершённым.
usermod
usermod - модифицирует существующего пользователя.
- Добавим пользователя darkfire в группы sys,wheel
usermod -aG sys,wheel darkfire
chsh
Изменить shell для пользователя и запретить ему логинеться по SSH.
chsh -s /bin/false УЧЁТНАЯ_ЗАПИСЬ
nologin — более удобный для пользователя вариант, с настраиваемым сообщением, выдаваемым пользователю, пытающемуся войти в систему, поэтому теоретически вы захотите его использовать; но и nologin, и false будут иметь один и тот же конечный результат: у кого-то нет оболочки тот не сможет подключиться по ssh.
📌 Для тестирования скриптов, установщиков VPN, Python ботов рекомендуем использовать надежные VPS на короткий срок. Если вам нужна помощь с более сложными задачами, вы можете найти фрилансера, который поможет с настройкой. Узнайте больше о быстрой аренде VPS для экспериментов и о фриланс-бирже для настройки VPS, WordPress. 📌
💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!
7 Самых Популярных Статей
- Как запустить скрипты и веб-приложения на Python
- Что такое страны TIER 1,2,3
- 7 способов сравнения файлов по содержимому в Windows или Linux
- Установка и тестирование веб-панели HestiaCP
- Китайский VPN Shadowsocks простая установка и настройка
- top, htop, atop определение загрузки ОС (Load average, LA)
- Использование rsync в примерах