В системах Linux можно использовать несколько различных схем аутентификации. Наиболее часто используемая и стандартная схема — аутентификация по файлам /etc/passwd
и /etc/shadow
.
/etc/shadow
— это текстовый файл, содержащий информацию о паролях пользователей системы. Он принадлежит пользователю root и теневой группе и имеет 640 разрешений .
Содержание
Формат /etc/shadow
Файл /etc/shadow
содержит по одной записи в каждой строке, каждая из которых представляет учетную запись пользователя. Вы можете просмотреть содержимое файла с помощью текстового редактора или такой команды, как cat
:
sudo cat /etc/shadow
Обычно первая строка описывает пользователя root, за которым следуют учетные записи системного и обычного пользователя. Новые записи добавляются в конец файла.
Каждая строка файла /etc/shadow
содержит девять полей, разделенных запятыми:
mark:$6$.n.:17736:0:99999:7:::
[--] [----] [---] - [---] ----
| | | | | |||+-----------> 9. Unused
| | | | | ||+------------> 8. Expiration date
| | | | | |+-------------> 7. Inactivity period
| | | | | +--------------> 6. Warning period
| | | | +------------------> 5. Maximum password age
| | | +----------------------> 4. Minimum password age
| | +--------------------------> 3. Last password change
| +---------------------------------> 2. Encrypted Password
+----------------------------------------> 1. Username
- Имя пользователя. Строка, которую вы вводите при входе в систему. Учетная запись пользователя, существующая в системе.
- Зашифрованный пароль. Пароль использует
$type$salt$hashed
формат$type$salt$hashed
.$type
— это алгоритм криптографического хеширования метода и может иметь следующие значения:$1$
— 5 MDL$2a$
— Blowfish$2y$
— Eksblowfish$5$
— SHA-256$6$
— SHA-512
Если в поле пароля есть звездочка (
*
) или восклицательный знак (!
), Пользователь не сможет войти в систему, используя аутентификацию по паролю. Другие методы входа в систему, такие как аутентификация на основе ключей или переключение на пользователя , по-прежнему разрешены.В старых системах Linux зашифрованный пароль пользователя хранился в
/etc/passwd
. - Последнее изменение пароля. Это дата последней смены пароля. Число дней отсчитывается с 1 января 1970 года (дата эпохи).
- Минимальный возраст пароля. Количество дней, которое должно пройти, прежде чем можно будет изменить пароль пользователя. Обычно он равен нулю, что означает отсутствие минимального возраста пароля.
- Максимальный возраст пароля. Количество дней после смены пароля пользователя. По умолчанию этот номер установлен на
99999
. - Период предупреждения. Количество дней до истечения срока действия пароля, в течение которых пользователя предупреждают о необходимости изменения пароля.
- Период бездействия. Количество дней после истечения срока действия пароля пользователя до отключения учетной записи пользователя. Обычно это поле пусто.
- Дата окончания срока. Дата, когда учетная запись была отключена. Он представлен как дата эпохи.
- Не используется. Это поле игнорируется. Он зарезервирован для использования в будущем.
Файл /etc/shadow
не следует редактировать вручную, если вы не знаете, что делаете. Всегда используйте команду, предназначенную для этой цели. Например, чтобы изменить пароль пользователя, используйте команду passwd
, а чтобы изменить информацию об устаревании пароля, используйте команду chage
.
Пример записи
Давайте посмотрим на следующий пример:
linuxize:$6$zHvrJMa5Y690smbQ$z5zdL...:18009:0:120:7:14::
Запись выше содержит информацию о пароле пользователя linuxize:
- Пароль зашифрован с помощью SHA-512 (пароль усечен для лучшей читаемости).
- Последний раз пароль менялся 23 апреля 2019 г. —
18009
. - Нет минимального возраста пароля.
- Пароль необходимо менять не реже, чем каждые 120 дней.
- Пользователь получит предупреждающее сообщение за семь дней до истечения срока действия пароля.
- Если пользователь не попытается войти в систему через 14 дней после истечения срока действия пароля, учетная запись будет отключена.
- Срок действия учетной записи отсутствует.
Выводы
В /etc/shadow
хранятся записи о зашифрованных паролях пользователей, а также другая информация, связанная с паролями.
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.