/etc/group
100%

Управление пользователями · Урок 5

/etc/group

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

/etc/group хранит локальные записи групп. Он сопоставляет имена групп числовым GID и перечисляет явных участников, обеспечивая общий доступ для нескольких учётных записей.

Локальные и разрешённые группы

Файл является лишь одним из возможных источников групп. NSS может разрешать группы из локальных файлов, служб каталогов и других настроенных баз. Покажите локальные записи командой:

$ cat /etc/group

Запросите разрешённую базу групп через getent:

$ getent group
$ getent group developers

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

Какая команда запрашивает разрешённую через NSS базу групп?

Чтение четырёх полей

Локальная запись содержит четыре поля, разделённых двоеточиями:

developers:x:1500:alice,bob
  1. Имя группы: developers.
  2. Поле пароля: обычно x, * или другой заполнитель; защищённые данные группового пароля могут храниться в /etc/gshadow.
  3. GID: числовая идентичность группы, здесь 1500.
  4. Список участников: разделённые запятыми имена явных участников, здесь alice и bob.

Групповые пароли — устаревшая возможность, используемая инструментами вроде newgrp в некоторых конфигурациях. Это не обычный механизм предоставления авторизации sudo, и его не следует вводить ручным редактированием полей.

Какое поле в developers:x:1500:alice,bob содержит GID?

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

Учёт первичного членства

Список участников /etc/group обычно не повторяет пользователей, у которых этот GID указан как первичный в записи passwd. Поэтому пользователь может входить в группу, даже если его имя отсутствует в поле 4.

Например, если первичный GID Alice равен 1500, она входит в developers, даже когда локальная запись группы оканчивается пустым полем участников:

developers:x:1500:

Поэтому разбор только поля 4 даёт неполное представление о членстве.

В записи passwd Alice первичный GID равен 1500, но её имя отсутствует в поле 4 группы 1500. Является ли она участником этой группы?

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

Для разрешённого представления учётной записи используйте id USER или groups USER:

$ id alice
$ groups alice

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

Какая команда сообщает UID, первичный GID и дополнительные группы текущего процесса?

Безопасное изменение локальных групп

Используйте groupadd, groupmod, groupdel, gpasswd и usermod, а не редактируйте записи универсальным редактором. Особенно внимательно различайте:

  • usermod -aG GROUP USER, добавляющую дополнительное членство.
  • usermod -G ..., заменяющую список дополнительных групп, если -a опущен.

Если ручной ремонт локальной базы неизбежен, используйте vigr для блокировки и grpck для проверки. Перед удалёнными изменениями идентичностей сохраняйте путь восстановления.

Чтобы попрактиковаться в локальном управлении группами, выполните лабораторные работы:

  1. Управление учётными записями Linux с useradd, usermod и userdel — отработайте создание, защиту, изменение и удаление учётных записей.
  2. Управление группами Linux с groupadd, usermod и groupdel — попрактикуйтесь с основными командами groupadd, usermod и groupdel.
  3. Добавление нового пользователя и группы — создайте пользователей и собственные группы и управляйте членством в сценарии добавления участников команды.

Урок завершён

Вы завершили /etc/group

Теперь вы можете интерпретировать локальные записи групп и точнее определять полное членство.

  • Запрашивайте настроенные источники через getent group.

  • Читайте четыре поля группы, разделённые двоеточиями.

  • Находите числовой GID и список явных участников.

  • Учитывайте первичное членство из записей passwd.

  • Проверяйте активные учётные данные, прежде чем полагаться на изменённое членство.

Сохраните прогресс

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

Создать бесплатный аккаунт
Следующий Урок
Назад к Управление пользователями