Информация о пароле

Последнее обновление: 14.03.2024

Статус пароля

Кроме установки пароля команда passwd также позволяет посмотреть его статус. Для этого команде передается опция -S

Например, пусть у нас ранее был создан пользователь "superuser1", и у него установлен пароль:

eugene@Eugene:~$ sudo useradd superuser1
eugene@Eugene:~$ sudo passwd superuser1
New password: 
Retype new password: 
passwd: password updated successfully

Посмотрим статус пароля данного пользователя "superuser1":

eugene@Eugene:~$ sudo passwd -S superuser1
superuser1 P 2024-03-07 0 99999 7 -1

Статус пароля выводит следующую информацию:

  • Имя пользователя

  • Дата установки пароля.

  • Количество дней до того, как пароль может быть изменен.

  • Количество дней, после которых необходимо сменить пароль.

  • Количество дней до истечения срока действия пароля, когда пользователь получает предупреждение.

  • Количество дней после истечения срока действия пароля, после которых учетная запись блокируется.

Аналогично можно получить статус пароля текущего пользователя:

eugene@Eugene:~$ passwd -S
eugene P 2024-01-28 0 99999 7 -1

Получение информации из /etc/shadow

Файл /etc/passwd позволяет получить нам информацию различную информацию о пользователе, в том числе и о его пароле. Например, получим данные о выше созданном пользователе superuser1:

superuser1:x:1001:1001::/home/superuser1:/bin/sh

Второе поле - символ "x" указывает, что пароль хранится в файле /etc/shadow. Посмотрим на этот файл. Он имеет вид наподобие следующего:

root:*:13669:0:99999:7:::
daemon:*:13669:0:99999:7:::
bin:*:13669:0:99999:7:::
sys:*:13669:0:99999:7:::
sync:!:13669:0:99999:7:::
sssd:!:13669::::::
eugene:$1$Qqn0p2NN$L7W9uL3mweqBa2ggrBhTB0:13669:0:99999:7:::
........................................

Строки в /etc/shadow также разделены на несколько полей, которые разделены двоеточием. Это следующие поля:

  • Логин

  • Зашифрованный пароль. Кроме собственно пароля здесь может стоять знак !, который означает, что вход в систему в настоящее время отключен. Также может использоваться символ *, который означает системную учетную запись - она используется для запуска служб, но не разрешена для входа в интерактивную оболочку (поэтому в основном имеет тот же эффект, что и !)

  • Дни между 1 января 1970 г. и датой последнего изменения пароля.

  • Минимальное количество дней до того, как пароль может быть изменен - срок, в течение которого пользователь должен использовать один и тот же пароль.

  • Максимальное количество дней, после которых пароль необходимо изменить - срок, в течение которого пользователь может использовать один и тот же пароль.

  • Количество дней до истечения срока действия пароля, в течение которых пользователь получает сообщение о необходимости смены пароля.

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

  • Срок действия: дни между 1 января 1970 г. и датой отключения учетной записи.

  • Зарезервированное поле (данное поле в настоящее время не используется).

Получим данные пароля созданного в начале статьи пользователя superuser1:

eugene@Eugene:~$ sudo grep superuser1 /etc/shadow
superuser1:$y$XUwEQCaqGCpg8G87cC2$Dimds3J:19796:0:99999:7:::

В данном случае получается следующая палитра данных:

  • superuser1 - логин

  • $y$XUwEQCaqGCpg8G87cC2$Dimds3J - зашифрованный пароль

  • 19796 - количество дней, прошедших с 1 января 1970 г до последнего изменения (или создания, если не изменялся) пароля

  • 0 - минимальное количество дней, в течение которых пользователь может использовать пароль

  • 99999 - макисмальное количество дней использования пароля

  • 7 - период предупреждения перед истечением пароля

Все остальные параметры не указаны.

Но, допустим, удалим пароль для пользователя superuser1 и снова проверим состояние пароля:

eugene@Eugene:~$ sudo passwd -d superuser1
passwd: password changed.
eugene@Eugene:~$ sudo grep superuser1 /etc/shadow
superuser1::19796:0:99999:7:::

Теперь пароль отсутствует, о чем говорят два двоеточия подряд после имени пользователя - ::

Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850