Cyber Security Academy · Урок

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

Добавляйте, удаляйте и проверяйте пользователей и группы, настраивайте sudo и применяйте принцип наименьших привилегий

Урок 2 из 413 шагов

«Управление пользователями и группами» — бесплатный урок Cyber Security Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cyber Security Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cyber Security Academy содержит 4 уроков всего.

Модель пользователей Linux

Linux — многопользовательская OS. Каждый процесс выполняется от имени определённого пользователя. Понимание пользователей и групп — основа контроля доступа и разделения привилегий.

Файл /etc/passwd

/etc/passwd хранит сведения об учётной записи пользователя: имя пользователя, UID, GID, домашний каталог и оболочку. Пароли хранятся в виде хешей в /etc/shadow, доступном для чтения только суперпользователю.

cat /etc/passwd
# format: username:x:UID:GID:comment:home:shell

Создание пользователей и управление ими

Ключевые команды:

useradd -m -s /bin/bash alice   # create user with home dir
passwd alice                    # set password
usermod -aG sudo alice          # add to sudo group
userdel -r alice                # delete user and home dir

Группы и контроль доступа

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

groupadd developers
usermod -aG developers bob
id bob                          # show UID, GID, groups

Файл /etc/shadow

/etc/shadow содержит хешированные пароли и сведения об устаревании паролей. Читать его может только суперпользователь. Формат хеша: $id$salt$hash, где id обозначает алгоритм (6=SHA-512, 2y=bcrypt).

sudo cat /etc/shadow
# $6$salt$hash = SHA-512

Принцип наименьших привилегий

Каждый пользователь и сервис должны работать только с минимальными необходимыми разрешениями. Никогда не запускайте приложения от имени суперпользователя без крайней необходимости. Используйте отдельные сервисные учётные записи без оболочки входа и с ограниченными домашними каталогами.

sudo и su

sudo выполняет одну команду с повышенными привилегиями и записывает это действие в журнал. su переключается на другого пользователя, обычно суперпользователя, на весь сеанс. Для возможности аудита предпочтительнее sudo — каждая команда с повышенными привилегиями записывается в /var/log/auth.log.

sudo apt update              # single command as root
sudo -u postgres psql        # run as specific service user
su - alice                   # switch to alice (full login)

Настройка Sudoers

Файл /etc/sudoers (редактируйте его с помощью visudo) определяет, какие пользователи могут выполнять какие команды от имени суперпользователя. Предоставляйте точечный доступ, а не полный доступ через sudo. Например, можно разрешить пользователю deploy только перезапускать nginx.

visudo
# deploy ALL=(ALL) NOPASSWD: /bin/systemctl restart nginx

Блокировка и истечение срока действия учётных записей

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

passwd -l alice              # lock account
usermod -e 2024-12-31 alice  # set expiry date
chage -l alice               # view password aging info

Сервисные учётные записи

Приложения должны работать от имени отдельных сервисных учётных записей со следующими ограничениями: без интерактивной оболочки входа (/usr/sbin/nologin), без права записи в домашний каталог и с минимальным числом членств в группах. Никогда не запускайте веб-серверы или базы данных от имени суперпользователя.

Аудит действий пользователей

Отслеживайте действия пользователей с помощью журналов:

last                        # recent logins
lastb                       # failed login attempts
journalctl _UID=1000        # journal entries for UID 1000
grep sudo /var/log/auth.log # sudo usage

Быстрая проверка: управление пользователями

В каком файле в Linux хранятся хешированные пароли, доступном для чтения только суперпользователю?

Итоги урока

Управление пользователями и группами Linux контролирует доступ с помощью UID, GID и членства в группах. Используйте useradd, usermod, groupadd. Следуйте принципу наименьших привилегий: используйте сервисные учётные записи без оболочки входа. Для возможности аудита используйте sudo, а не su. Отслеживайте подозрительную активность в /var/log/auth.log.

Можно начать бесплатно

Изучай Cyber Security Academy с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
76
Уроки
303

Часто задаваемые вопросы

Урок «Управление пользователями и группами» бесплатный?

Да — полный текст урока «Управление пользователями и группами» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cyber Security Academy, подпишись на CoddyKit PRO. Курс Cyber Security Academy содержит 4 уроков всего.

Чему я научусь в уроке «Управление пользователями и группами»?

Добавляйте, удаляйте и проверяйте пользователей и группы, настраивайте sudo и применяйте принцип наименьших привилегий Ты практикуешь Cyber Security Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Cyber Security Academy?

Предыдущий опыт не требуется. Cyber Security Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Управление пользователями и группами»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Cyber Security Academy?

Да. Каждый урок Cyber Security Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Разрешения и владельцы файлов
  2. Управление пользователями и группами
  3. Защита SSH и аутентификация по ключу
  4. Правила брандмауэра iptables и UFW
← Назад к Cyber Security Academy