- Как создать несколько учетных записей пользователей в Linux
- Как создать несколько учетных записей пользователей в Linux
- Заключение
- Похожие записи:
- Работа с пользователями в Linux
- Получение информации о пользователях
- Создание
- Ключи (опции)
- Редактирование
- Удаление
- Блокировка
- Работа с группами
- Список пользователей
- Примеры работы с учетными записями
- useradd
- usermod
- chage
- Возможные ошибки
- sudo must be owned by uid 0 and have the setuid bit set
- Как создать несколько учетных записей пользователей в Linux
- Newusers команда описание
Как создать несколько учетных записей пользователей в Linux
Часто системным администраторам необходимо создать несколько пользователей. Но типичные команды для создания пользователей, adduser и useradd, позволяют создать только одного пользователя за один раз. Что же делать в таких случаях? Для этой цели можно использовать команду newuser. Команда newuser позволяет одновременно создавать и обновлять несколько учетных записей новых пользователей. Она позволяет вводить информацию о пользователях через файл или стандартный ввод (stdin), а также обновлять набор пользователей. В этой статье мы узнаем, как создать несколько учетных записей пользователей в Linux.
Как создать несколько учетных записей пользователей в Linux
Ниже описаны шаги по созданию нескольких учетных записей пользователей в Linux. Для этого необходимо создать файл с информацией о пользователе, указанной в следующем формате.
pw_name:pw_passwd:pw_uid:pw_gid:pw_gecos:pw_dir:pw_shell
- pw_name: имя пользователя
- pw_passwd: пароль пользователя
- pw_uid: идентификатор пользователя
- pw_gid: идентификатор группы пользователя
- pw_gecos: определяет разделы комментариев.
- pw_dir: определяет домашний каталог пользователя.
- pw_shell: определяет оболочку пользователя по умолчанию.
Например, давайте создадим простой файл с информацией о пользователях.
Добавьте следующую информацию для нескольких пользователей.
test:213254test:1002:1002:Test Admin:/home/test:/bin/bash test2:@!#@%$PAss:1003:1003:Test 2:/home/test2:/bin/bash
Сохраните и закройте файл. Измените его разрешения так, чтобы он стал безопасным. Это необходимо потому, что он содержит обычные пароли для ваших учетных записей пользователей.
Выполните команду newusers, чтобы прочитать список пользователей из файла users.txt и создать новых пользователей в соответствии с информацией.
Важно понять, как работает приведенная выше команда. newuser прочитает входной файл, создаст или обновит указанные учетные записи, а затем запишет эти изменения в их базы данных групп или пользователей. Если в процессе возникнут ошибки, изменения в базу данных не будут внесены.
Если приведенная выше команда выполнена успешно, вы можете проверить /etc/passwd и /etc/groups на наличие изменений.
cat /etc/passwd | grep -E "test"
Для получения дополнительной информации об этой команде вы можете ознакомиться с документацией man.
Заключение
В этой статье мы узнали, как создать несколько учетных записей пользователей в Linux. Вы можете использовать его для легкого добавления нескольких пользователей, особенно в ИТ-среде. Это гораздо лучше, чем писать сценарий оболочки для просмотра списка имен пользователей и паролей и вызова команды useradd или passwd. Это связано с тем, что вызов useradd позволяет только добавлять пользователей, но не устанавливать их пароли, в то время как использование passwd требует интерактивного ввода паролей для каждого пользователя.
Похожие записи:
Работа с пользователями в Linux
Обновлено: 20.04.2023 Опубликовано: 05.12.2016
В данной инструкции рассказывается о работе с пользователями Linux через терминал (с применением командной строки).
Получение информации о пользователях
1. Список пользователей можно посмотреть в файле /etc/passwd командой:
Данная команда вернет всех пользователей, в том числе служебных. Для отображения только учетных записей пользователей можно ввести команду:
2. Проверить существование пользователя и увидеть его идентификатор можно с помощью команды id:
Мы должны увидеть что-то на подобие:
uid=1001(username) gid=1001(username) groups=1001(username),27(sudo)
* учетная запись username существует, она находится в основной группе username и дополнительной sudo. Ее идентификатор 1001.
3. Также мы можем получить строку о пользователе из файла /etc/passwd:
* наш пользовател username имеют идентификатор пользователя и группы 1001, его домашняя директория /home/username, командная оболочка /bin/sh.
Создание
* опции не являются обязательными при создании пользователя.
* в данном примере создается учетная запись dmosk.
Для учетной записи стоит сразу создать пароль:
* после ввода, система попросит ввести пароль дважды.
Ключи (опции)
Ключ | Описание и примеры |
---|---|
-b | Задает базовый каталог для домашнего каталога useradd dmosk -b /var/home |
-c | Создает комментарий для описания учетной записи useradd dmosk -c «Пользователя для управления системой» |
-d | Полный путь к домашнему каталогу пользователя useradd dmosk -d /home/newuser |
-D | Позволяет показать или изменить настройки по умолчанию, которые будут применяться при последующем создании пользователей useradd dmosk -Ds /bin/bash |
-e | Дата, после которой учетная запись устареет. useradd dmosk -e 2017-12-31 |
-f | Число дней, после которого учетная запись с устаревшим паролем будет заблокирована useradd dmosk -f 0 |
-g | Задает основную группу useradd dmosk -g altternativegroup |
-G | Задает дополнительные группы useradd dmosk -G wheel |
-k | Путь к источнику скелета (файлы с шаблонами для нового пользователя) useradd dmosk -k /var/skel |
-m | При создании пользователя создать домашний каталог useradd dmosk -m |
-M | Не создавать домашний каталог useradd dmosk -M |
-N | Не создавать основную группу с таким же именем, как у пользователя useradd dmosk -N |
-o | Разрешает создание учетной записи с повторяющимся UID useradd dmosk -u 15 -o |
-p | Задает пароль useradd dmosk -p pass |
-r | Системная учетная запись (без домашнего каталога и с идентификаторами в диапазоне SYS_UID_MIN — SYS_UID_MAX из файла /etc/login.defs) useradd dmosk -r |
-R | Каталог, в который выполняется chroot useradd dmosk -R /var/chroot/home |
-s | Путь до оболочки командной строки useradd dmosk -s /bin/csh |
-u | Задает UID useradd dmosk -u 666 |
-U | Имя группы будет таким же, как у пользователя useradd dmosk -U |
Актуальный список ключей можно получить командой useradd -h.
Редактирование
* эта команда добавит пользователя dmosk в группу wheel
Удаление
Блокировка
1. Можно заблокировать пользователя, не удаляя его из системы:
Чтобы разблокировать пользователя, вводим:
2. В некоторых системах Linux может использоваться pam-модуль tally. Он осуществляет подсчет количества неудачных попыток входа в систему. Также он может блокировать доступ при превышении данного количества.
Чтобы посмотреть счетчик для пользователя, вводим команду:
Для сброса счетчика (и блокировки, если она есть) вводим:
pam_tally2 —user=admin —reset
Работа с группами
4. Добавление пользователя в группу:
Выполняется через команду usermod:
Выполняется с помощью gpasswd:
Список пользователей
Посмотреть список пользователей можно в файле /etc/passwd:
Мы увидим что-то на подобие:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
.
Как правило, большая часть данных пользователей является системными — их UID меньше 1000 и больше 60000.
Более функциональная команда для отображения содержимого файла passwd — getent:
Можно найти пользователя по идентификатору:
Получить список не системных пользователей:
Получить только список логинов не системных учетных записей:
Примеры работы с учетными записями
Рассмотрим несколько утилит, с помощью которых можно управлять учетными записями в Linux.
useradd
1. Создать пользователя, добавить его в группу и создать домашнюю директорию:
useradd dmosk -G printer -m
2. Создать учетную запись с возможностью получения привилений суперпользователя (командой sudo su):
3. Создать пользователя с определенными UID и GID (соответственно идентификаторы пользователя и группы):
useradd dmosk -u 900 -g 950
* группа с используемым идентификатором (в данном примере 950) уже должна быть создана заранее с использованием команды groupadd.
4. Создать пользователя и указать путь к домашней директории:
useradd dmosk -d /home/newdmosk
5. Создать учетную запись без возможности входа в систему:
useradd dmosk -s /sbin/nologin
usermod
1. Потребовать сменить пароль при следующем входе в систему:
2. Поменять пользователю основную группу:
usermod dmosk -g kdonewgroup
3. Задать пользователю дополнительную группу с правами root:
4. Добавить пользователя в группу:
* в данном примере мы добавим пользователя dmosk в группу group.
5. Сменить домашнюю директорию:
usermod -d /var/www/dmosk dmosk
* данной командой мы меняем для пользователя dmosk домашнюю директорию на /var/www/dmosk.
chage
1. Автоматическая блокировка учетной записи:
* данной командой мы указали, что учетная запись dmosk перестанет действовать после 1 мая 2023 года.
Чтобы посмотреть информацию о дате окончания срока действия учетной записи вводим:
Сделать учетную запись бессрочной:
Возможные ошибки
sudo must be owned by uid 0 and have the setuid bit set
При попытке получить привилении командой:
. система возвращает ошибку:
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set
Причина: эта ошибка возникает, когда утилита sudo не имеет правильных прав доступа на вашей системе. В частности, она происходит, когда владелец файла /usr/bin/sudo не является пользователем root или когда установлен неправильный бит setuid на файле.
Решение: убедитесь, что вы вошли в систему с учетной записью, имеющей права администратора. Это можно сделать, войдя напрямую под пользователем root.
Выполняем команду, чтобы проверить права файла sudo:
Если владелец не является пользователем root, выполните следующую команду, чтобы изменить владельца файла:
chown root:root /usr/bin/sudo
Убедитесь, что установлен правильный бит setuid на файле sudo, выполнив следующую команду:
Как создать несколько учетных записей пользователей в Linux
Две утилиты для добавления или создания учетных записей пользователей в системах Unix / Linux – adduser и useradd.
Эти команды предназначены для добавления единой учетной записи пользователя в систему за раз.
Что делать, если у вас есть несколько учетных записей пользователей?
Вот когда вам нужна такая программа, как newusers.
Newusers команда описание
Newusers – полезная утилита командной строки, используемая для обновления и создания новых учетных записей пользователей за один раз.
Она предназначена для использования в ИТ-средах с большими системами, где системному администратору необходимо обновить или создать несколько учетных записей пользователей в пакетном режиме.
Он считывает информацию из stdin (по умолчанию) или файл для обновления набора существующих учетных записей пользователей или для создания новых пользователей.
В этой статье мы объясним, как создавать несколько учетных записей пользователей в пакетном режиме с помощью утилиты Newusers в системах Linux.
Чтобы создать пользователей в пакете, вы можете предоставить их информацию в файле в следующем формате, как и стандартный файл паролей:
pw_name:pw_passwd:pw_uid:pw_gid:pw_gecos:pw_dir:pw_shell
- pw_name: имя пользователя
- pw_passwd: пароль пользователей
- pw_uid: ID пользователей
- pw_gid: ID группы пользователей
- pw_gecos: определяет разделы комментариев.
- pw_dir: определяет домашний каталог пользователя.
- pw_shell: определяет оболочку пользователя по умолчанию.
Внимание: вы должны защитить входной файл, так как он содержит незашифрованные пароли, установив соответствующие разрешения на него. Он должен быть доступен только для чтения и записи через root.
Например, чтобы добавить учетные записи пользователей ravi и tecmint, вы можете создать файлы с именем users.txt, как показано далее:
Затем добавьте данные учетных записей пользователей в файл в следующем формате:
ravi:213254lost:1002:1002:Tecmint Admin:/home/ravi:/bin/bash tecmint:@!#@%$Most:1003:1003:Tecmint:/home/tecmint:/bin/bash
Сохраните файл и установите для него необходимые разрешения.
Теперь запустите команду newusers с входным файлом, чтобы сразу добавить вышеуказанные учетные записи пользователей.
Во-первых, программа newusers пытается создать или обновить указанные учетные записи, а затем записать эти изменения в базы данных пользователей или групп.
В случае каких-либо ошибок, кроме последней записи в базы данных, никаких изменений в базах данных не происходит.
Это просто о том, как работает команда newusers.
Если предыдущая команда выполнена успешно, проверьте файлы /etc/passwd и /etc/groups, чтобы подтвердить, что учетные записи пользователей были добавлены, как показано далее.
$ cat /etc/passwd | grep -E "ravi|tecmint"
Для получения дополнительной информации см. Справочную страницу newusers.