Управление локальными пользователями и группами

LinuxBeginner
Практиковаться сейчас

Введение

Администрирование локальных пользователей и групп — одна из первых задач, с которой сталкивается системный администратор Linux. В рамках подготовки к RHCSA от вас ожидается умение просматривать записи учетных записей, создавать пользователей и группы, настраивать членство в группах, изменять метаданные учетных записей и безопасно удалять временные записи.

В этой лабораторной работе вы создадите только временные локальные учетные записи: rhcsauser, rhcsaops и rhcsaaudit. Вы не будете изменять учетную запись labex, конфигурацию SSH, пароли или параметры входа в систему. В последнем шаге вы удалите временного пользователя и одну временную группу, чтобы привести систему в исходное состояние.

Просмотр существующих записей локальных учетных записей

На этом этапе вы изучите существующие записи локальных учетных записей перед созданием новых. Команда getent выполняет запросы к настроенным базам данных службы имен, поэтому она работает как с локальными файлами, так и с другими источниками идентификации. Команда id отображает числовой идентификатор и членство в группах для пользователя.

Перейдите в стандартную директорию проекта LabEx.

cd /home/labex/project

Просмотрите запись существующей учетной записи labex.

getent passwd labex

Вывод разделен двоеточиями. Первое поле — это имя пользователя, а последующие поля включают числовой UID, основной GID, домашнюю директорию и командную оболочку (shell).

Просмотрите текущее членство в группах для labex.

id labex

Просмотрите запись текущей основной группы для labex.

getent group labex

Эти команды работают только на чтение. Они дают вам базовое представление перед созданием временных учетных записей для практики.

Создание локальной группы и пользователя

На этом этапе вы создадите локальную группу и локального пользователя. Создание группы заранее позволяет назначить её в качестве основной группы пользователя при создании учетной записи.

Создайте основную группу для тренировочного пользователя.

sudo groupadd rhcsaops

Создайте rhcsauser с домашней директорией, Bash в качестве командной оболочки и rhcsaops в качестве основной группы. В команде useradd флаг -m создает домашнюю директорию, -g задает основную группу, а -s определяет командную оболочку.

sudo useradd -m -g rhcsaops -s /bin/bash rhcsauser

Просмотрите запись новой учетной записи.

getent passwd rhcsauser

Проверьте идентификатор и членство в группах нового пользователя.

id rhcsauser

Выведите список содержимого домашней директории, созданной командой useradd -m.

sudo ls -ld /home/rhcsauser

Добавление дополнительной группы

На этом этапе вы добавите дополнительную (второстепенную) группу. У пользователя может быть только одна основная группа, но он также может состоять в дополнительных группах для совместного доступа.

Создайте вторую группу с именем rhcsaaudit.

sudo groupadd rhcsaaudit

Добавьте rhcsauser в дополнительную группу rhcsaaudit. Опции -aG означают добавление в список дополнительных групп. Используйте -a вместе с -G, чтобы случайно не заменить существующие дополнительные группы.

sudo usermod -aG rhcsaaudit rhcsauser

Проверьте группы пользователя.

id rhcsauser

Просмотрите запись группы аудита. В строке группы должен быть указан rhcsauser в качестве участника.

getent group rhcsaaudit

Изменение метаданных учетной записи

На этом этапе вы измените метаданные учетной записи, не затрагивая состояние пароля. Старение паролей и блокировка учетных записей будут рассмотрены позже, поэтому этот шаг сосредоточен на поле комментария и командной оболочке.

Установите описательный комментарий для тренировочного пользователя. Опция -c обновляет поле GECOS/комментарий.

sudo usermod -c "RHCSA Practice User" rhcsauser

Измените командную оболочку на /bin/sh. Опция -s обновляет поле оболочки в записи учетной записи.

sudo usermod -s /bin/sh rhcsauser

Просмотрите обновленную запись учетной записи.

getent passwd rhcsauser

Используйте chage -l только для просмотра деталей старения пароля. Не меняйте параметры старения пароля в этой лабораторной работе; это будет темой следующего практического занятия.

sudo chage -l rhcsauser

Удаление временных локальных учетных записей

На этом этапе вы удалите временного пользователя и одну временную группу. Очистка является частью администрирования учетных записей, так как неиспользуемые записи не должны оставаться в системе.

Удалите тренировочного пользователя и его домашнюю директорию. Опция -r удаляет домашнюю директорию пользователя и почтовый спул (если поддерживается).

sudo userdel -r rhcsauser

Удалите дополнительную группу аудита.

sudo groupdel rhcsaaudit

Убедитесь, что пользователь удален. Команда getent возвращает ненулевой код завершения, если запись не существует, поэтому && echo выведет сообщение только в том случае, если поиск завершился неудачей, как и ожидалось.

getent passwd rhcsauser >/dev/null || echo "rhcsauser removed"

Убедитесь, что группа аудита удалена.

getent group rhcsaaudit >/dev/null || echo "rhcsaaudit removed"

Оставьте rhcsaops в системе для проверки. Теперь это пустая локальная группа.

getent group rhcsaops

Резюме

Вы попрактиковались в администрировании локальных пользователей и групп для подготовки к RHCSA. Вы изучили существующие записи учетных записей, создали основную группу и локального пользователя, добавили дополнительную группу, изменили метаданные учетной записи, просмотрели информацию о старении пароля без внесения изменений и безопасно удалили временные учетные записи.