Лучшая практика UID == GID?

я настраиваю RH Linux box для обучения. В прошлом у меня было две группы, faculty и students. Каждая учетная запись учащегося была назначена основной группе students инструктор faculty.

Я читал Nemeth et al. Unix и Linux System Admin (4th ed) и они рекомендуют, чтобы основная группа каждой учетной записи была такой же, как и идентификатор пользователя.

что предпочтительнее?

  • настройка учетных записей студентов с их основная группа такие же как их
    id пользователя (i.g. uid == gid), а затем добавьте их в students группы?

  • или я должен просто добавить всех студентов изначально к students
    группа, как я делал в прошлом?

это семантически то же самое?

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

1
задан Levon
21.01.2023 6:16 Количество просмотров материала 2475
Распечатать страницу

3 ответа

Если вы хотите сделать так, чтобы учащиеся не могли получить доступ к файлам друг друга, у вас есть два варианта:

  1. использовать для каждого пользователя GID (UID == GID) и установить umask по умолчанию 0750.
  2. установите umask по умолчанию на 0700.

первый вариант быстрее реализовать, и гораздо меньше шансов сломать вещи. Имейте в виду, однако, что нет никакого практического способа без использования чего-то вроде SELinux, чтобы люди намеренно не позволяли другим получать доступ свои файлы.

4
отвечен Austin Hemmelgarn 2023-01-22 14:04

Это в основном вопрос личных предпочтений.

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

Насколько я смог определить, нет никакой реальной большой выгоды для любого метода. Большинство основных дистрибутивов Linux в эти дни по умолчанию используют метод UID=GID. Некоторые другие системы Unix по-прежнему предпочитают другую методологию. На самом деле это не имеет значения, если вы используете UMASK соответствующим образом. (750 стандартно для GID=UID, 700 предпочтительно, если несколько пользователей совместно используют GID.)

может быть какое-то программное обеспечение, которое предполагает одно или другое, но для каждого случая программного обеспечения, которое предпочитает GID=UID, вы можете найти другую часть программного обеспечения, которая хочет его наоборот. И вы всегда можете заставить вещи работать с помощью творческого использования chown и chgrp.

в некоторых организациях может быть предпочтение отдано общему GID из-за способа настройки общих сетевых ресурсов. (СЕТЕВАЯ ФАЙЛОВАЯ СИСТЕМА разрешения или то, как они сопоставляют разрешения Unix на SMB ACL.)

поэтому я бы пошел с потоком: используйте то, что предписано в вашей организации (если есть такое правило) или то, что по умолчанию в вашем дистрибутиве по выбору (чтобы свести к минимуму проблемы с приложениями, которые предполагают определенную систему на основе используемого дистрибутива).

2
отвечен Tonny 2023-01-22 16:21

многие дистрибутивы автоматически создают основную группу вместе с новой учетной записью пользователя. По умолчанию он использует следующий доступный идентификатор, и это обычно означает, что UID нового пользователя будет равен его GID, если вы ранее не создали группу с автоматическим GID, назначенным ему, или UID без собственной основной группы.

говоря UID==GID, таким образом, неправильное название, как и на многих многопользовательских машинах, UID может не совпадать с GID пользователя.

как правило, всех пользователей учетные записи являются членами общей группы, как правило,users(100), поэтому в системах, где у каждой учетной записи есть своя основная группа, вы можете переключаться с парадигмы на другую на лету, например,chown -R :users . файлы в папке.

2
отвечен sleblanc 2023-01-22 18:38

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх