Понимание файла /etc/shadow
В этом шаге вы узнаете о структуре и назначении файла /etc/shadow
.
Файл /etc/shadow
хранит зашифрованные пароли и конфигурационную информацию, связанную с паролями, для каждой учетной записи пользователя. Каждая строка в файле представляет одного пользователя и содержит 9 полей, разделенных двоеточием:
- Имя пользователя (Username)
- Хэш зашифрованного пароля (Encrypted password hash)
- Количество дней с начала эпохи (1970-01-01), когда пароль был последний раз изменен
- Минимальное количество дней, которое должно пройти между изменениями пароля
- Максимальное количество дней, в течение которых пароль действителен
- Количество дней до истечения срока действия пароля, за которое пользователю выдается предупреждение
- Количество дней после истечения срока действия пароля, по истечении которых учетная запись будет отключена
- Количество дней с начала эпохи (1970-01-01), по истечении которых учетная запись будет отключена
- Резервное поле для будущего использования
Откройте терминал и перейдите в каталог /home/labex/project
.
cd /home/labex/project
Проверим запись пользователя labex
в файле /etc/shadow
:
sudo cat /etc/shadow | grep labex > /home/labex/project/labex_shadow.txt
Обратите внимание, что мы использовали sudo
для чтения файла /etc/shadow
. Это связано с тем, что этот файл может быть прочитан только пользователем с правами суперпользователя (root).
Проверьте содержимое файла labex_shadow.txt
:
cat labex_shadow.txt
Пример вывода:
labex:$y$j9T$enO.7A1WiUBiOvRdw4gox0$cCOqZqHAQgLkhPb.NDJO9zO6T3EUQ3.AeE0amN57AZ8:19818:0:99999:7:::
Эта строка означает:
- Имя пользователя:
labex
- Хэш зашифрованного пароля:
$y$j9T$enO.7A1WiUBiOvRdw4gox0$cCOqZqHAQgLkhPb.NDJO9zO6T3EUQ3.AeE0amN57AZ8
- Последнее изменение пароля: 19818 дней с начала эпохи (1970-01-01)
- Минимальный срок действия пароля: 0 дней (нет ограничений)
- Максимальный срок действия пароля: 99999 дней (без истечения срока)
- Период предупреждения о пароле: 7 дней до истечения срока
- Учетная запись никогда не истекает
По умолчанию только пользователь с правами суперпользователя (root) может читать и изменять файл /etc/shadow
. Однако неправильно настроенные (misconfigured
) разрешения могут иногда создать возможности для эскалации привилегий.