Сервер: Пользователи, группы, права доступа в CentOS

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

Файл /etc/passwd содержит список пользователей

  • Регистрационное имя. Регистрационные имена должны быть уникальными и состоять не более чем из 32 символов. Они могут содержать любые символы, кроме двоеточия и символа новой строки. Они не должны начинаться с цифры.
  • Зашифрованный пароль или «заполнитель» пароля. В данном поле возможно присутствие символа «х», символа «*» или набора случайных символов и чисел. В первом случае указывается, что пароль храниться в файле /etc/shadow. Во втором случае говорится, что данная учетная запись временно отключена. В последнем случае указывается непосредственный пароль пользователя в зашифрованном виде.
  • Идентификатор пользователя - это 32-битное целое число, которое уникально идентифицирует пользователя в системе. По умолчанию, идентификаторы меньше 500 зарезервированы для служебных учетных записей. Регулярные пользователи имеют идентификаторы, начиная с 500.
  • Идентификатор группы по умолчанию. Как и идентификатор пользователя, идентификатор группы (GID) является 32-битным целым числом. Идентификатор 0 зарезервирован для группы с именем root, идентификатор 1 - для группы bin, а 2 - для группы daemon. Группы определяются в файле /etc/group, а поле идентификатора группы в файле /etc/passwd задает стандартный («эффективный») идентификатор на момент регистрации пользователя в системе. Этот идентификатор не играет особой роли при определении прав доступа; он используется лишь при создании новых файлов и каталогов. Новые файлы обычно включаются в эффективную группу своего владельца, но если у каталога установлен специальный бит setgid (02000) или файловая система смонтирована с опцией grpid, новые файлы принадлежат группе владельца каталога. По умолчанию, в ОС Linux для каждого нового пользователя создается новая группа с таким же регистрационным именем и идентификатором.
  • Поле персональных данных. Поле GECOS в основном используется для хранения персональной информации о каждом пользователе. Оно не имеет четко определенного синтаксиса. Структура данного поля может быть произвольной, но команда finger интерпретирует разделенные запятыми элементы данного поля в следующем порядке: полное имя; номер офиса и здания; рабочий телефон; домашний телефон.
  • Домашний каталог. Войдя в систему, пользователь попадает в свой домашний каталог. Если на момент регистрации этот каталог отсутствует, выводится сообщение о его отсутствии. Если в качестве значения поля домашнего каталога по умолчанию DEFAULT_HOME в файле /etc/login.defs установлено «no», продолжение регистрации пользователя будет невозможно; в противном случае пользователь попадает в корневой каталог. По умолчанию, домашние каталоги пользователей создаются в каталоге /home. При добавлении в систему нового пользователя в его домашний каталог копируются все файлы из каталога /etc/skel, в котором содержаться персональные конфигурационные файлы командного интерпретатора и различных программ.
  • Командный интерпретатор. В качестве регистрационной оболочки, как правило, задается интерпретатор команд, например, /bin/sh или /bin/csh, но, в принципе, это может быть любая программа. По умолчанию используется интерпретатор bash. Пользователи могут менять интерпретатор с помощью команды chsh. Файл /etc/shells содержит список тех интерпретаторов, которые доступны для выбора.

Файл /etc/group содержит имена групп и списки членов каждой группы

  • Имя группы. По умолчанию при создании нового пользователя создается также его группа с таким же именем, как и регистрационное имя пользователя.
  • Зашифрованный пароль или символ х, указывающий на использование файла /etc/gshadow;
  • Идентификатор группы.
  • Список членов, разделенный запятыми без пробелов.

Файл /etc/shadow доступен для чтения только пользователю root и предназначен для хранения зашифрованных паролей

  • Регистрационное имя. Регистрационное имя берется из файла /etc/passwd. Оно связывает записи файлов /etc/passwd и /etc/shadow.
  • Зашифрованный пароль.
  • Дата последнего изменения пароля. Данное поле обычно заполняется командой passwd.
  • Минимальное число дней между изменениями пароля. В данном поле задается количество дней, спустя которые пользователь сможет снова изменить пароль.
  • Максимальное число дней между изменениями пароля. Максимальное время жизни пароля определяется суммой значений данного и седьмого полей.
  • Количество дней до истечения срока действия пароля, когда выдается предупреждение. В данном поле задано количество дней, оставшихся до момента устаревания пароля, когда программа login должна предупреждать пользователя о необходимости изменить пароль.
  • Количество дней по истечении срока действия пароля, когда учетная запись отключается.
  • Срок действия учетной записи. По окончанию этого срока пользователь не сможет зарегистрироваться в системе, пока администратор не сбросит значение поля. Если поле содержит пустое значение, учетная запись всегда будет активной.
  • Зарезервированное поле, которое в настоящее время всегда пустое.
 

// Создать пользователя username
useradd username

// Установить пароль пользователю username
passwd username

// Добавить пользователя username в группу groupname
usermod -a -G groupname username

// Узнать в какой группе пользователь username
id username 

groups username

// Рекурсивно изменить владельца и группу у файлов в каталоге /var/www/html/site/
chown -R username:groupname /var/www/html/site/



// Права на файлы
// Первая цифра – права владельца файла, вторая цифра – права группы, третья цифра – права всех пользователей
// Значения: r (read, чтение), w (write, запись), x (execute, выполнение)
// 755 - шаманить может только владелец
// 775 - шаманить может только владелец и группа

// Удалить юзера (удаляет учётную запись и файлы пользователя)
userdel username

Код был обновлён. Предыдущий рейтинг:

  • Бесполезный код - 0 голосов
  • Костыль - 0 голосов
  • Полезный код - 2 голоса
Сервер up: 1.6 г. просмотров: 7.7k