Сервер: Пользователи, группы, права доступа в Linux
Создание пользователя, добавление в группу, назначение разрешений.
Файл /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 // Удалить юзера (удаляет учётную запись и файлы пользователя) userdel username
Права доступа
Символьные значения прав доступа:
- r - read, чтение
- w - write, запись
- x - execute, выполнение
Двоичная система | Восьмеричная система | Символьная | Права на файл | Права на каталог |
---|---|---|---|---|
000 | 0 | --- | нет | нет |
001 | 1 | --x | выполнение | чтение свойств файлов |
010 | 2 | -w- | запись | нет |
011 | 3 | -wx | запись и выполнение | всё, кроме получения имени файлов |
100 | 4 | r-- | чтение | чтение имён файлов |
101 | 5 | r-x | чтение и выполнение | доступ на чтение файлов/их свойств |
110 | 6 | rw- | чтение и запись | чтение имён файлов |
111 | 7 | rwx | все права | все права |
Права доступа состоят из трёх цифр. Первая цифра – права владельца, вторая цифра – права группы, третья цифра – права всех остальных пользователей. Например:
- 644 (-rw-r--r-- или 110 100 100) – все пользователи имеют право чтения; владелец может редактировать
- 755 (-rwxr-xr-x или 111 101 101) – каждый пользователь имеет право читать и запускать на выполнение; владелец может редактировать
- 777 (-rwxrwxrwx или 111 111 111) – каждый пользователь может читать, редактировать и запускать на выполнение
// Изменить владельца файла chown root /var/run/httpd.pid // Рекурсивно изменить владельца и группу для каталога /var/www/html/site и всех файлов chown -R username:groupname /var/www/html/site // Изменить права доступа к каталогу/файлу chmod 755 /var/www/html/site chmod 644 /var/www/html/site/index.html // Просмотр текущих прав доступа каталога/файла ls -l /var/www/html/site ls -l /var/www/html/site/index.html
Комментарии