Файл /etc/shadow в Solaris и Red Hat
Категория: Подключение новых пользователей | Автор: admin | 12-10-2009, 01:32 | Просмотров: 4408

Использование теневого файла паролей в Solaris является обязательным. В Red Hat для работы с ним требуется наличие пакета shadow.

Файл /etc/shadow доступен для чтения только суперпользователю и предназначен для хранения зашифрованных паролей подальше от любопытных глаз. В нем также содержится учетная информация, которая недоступна в файле /etc/passwd. В отличие от файла master.passwd во FreeBSD, файл shadow не включает в себя файл passwd, и последний не генерируется автоматически при изменении теневого файла. Оба файла необходимо сопровождать независимо друг от друга.

Подобно файлу /etc/passwd, файл /etc/shadow содержит одну строку для каждого пользователя. Каждая строка состоит из 9 полей, разделенных двоеточиями:

  • регистрационное имя;

  • зашифрованный пароль;

  • дата последнего изменения пароля;

  • минимальное число дней между изменениями пароля;

  • максимальное число дней между изменениями пароля;

  • число дней, которое должно остаться до истечения срока действия пароля, чтобы было выдано предупреждение;

  • период отсутствия активности, после которого учетная запись будет отменена;

  • срок действия учетной записи;

  • флаги.

 

Лишь первые два поля должны быть непустыми. Поля дат задаются в виде числа дней (не секунд), прошедших с 1-го января 1970 г. Это отличается от стандартного способа вычисления времени в UNIX-системах. К счастью, задавать эти поля можно с помощью команды usermod.

Типичная запись выглядит так:

millert:inNO.VAsclWn.:11031::180:14::18627:

 

Вот более подробное описание каждого поля:

  • Регистрационное имя берется из файла /etc/passwd. Оно связывает записи в файлах passwd и shadow.

  • Зашифрованный пароль идентичен тому, который ранее хранился в файле /etc/passwd.

  • Поле последнего изменения содержит время, когда пользователь последний раз менял свой пароль. Это поле обычно заполняется программой /bin/passwd.

  • В четвертом поле задается число дней, которые должны пройти, прежде чем пользователь сможет снова изменить пароль. Эта возможность кажется нам бесполезной и даже опасной, если в течение указанного времени будет обнаружено нарушение в системе зашиты. Поэтому мы не рекомендуем устанавливать данное поле.

  • В пятом поле задано максимальное число дней между двумя изменениями пароля. Это дает возможность администраторам заставлять пользователей менять свои пароли (см. параграф 21.3). В Linux максимальное время жизни пароля определяется суммой значений данного и седьмого полей.

  • В шестом поле задано количество дней, остающихся до момента устаревания пароля, когда программа login должна начать предупреждать пользователя о грядущем изменении пароля.

  • В Solaris и Linux седьмое поле интерпретируется по-разному.

  • Solaris поступает так: если пользователь не регистрировался в системе в течение указанного времени, его учетная запись будет отключена. Неиспользуемые учетные записи являются любимой мишенью хаке­ров, а данное поле дает администратору возможность своевременно предотвращать атаки. Оно, однако, работает только в том случае, когда имя пользователя можно найти в файле /var/adm/lastlog. Пользователи, которые никогда не регистрировались в системе, не могут быть отключены автоматически. Описанный механизм не очень хорошо работает в сетевой среде, поскольку на каждом компьютере имеется свой файл lastlog.

  • В Linux все осуществляется совершенно по-другому. Данное поле задает, сколько дней после устаревания пароля необходимо ждать, прежде чем отменить учетную запись. Это совершенно неоправданное изменение, так как механизм, используемый в Solaris, намного удобнее. Ситуация усугубляется также тем, что в документации к Linux назначение поля описано довольно расплывчато и нечетко. Нам пришлось обратиться к исходным текстам системы, чтобы понять, как она работает.

 

  • В восьмом поле задана дата, когда учетная запись будет отменена. После этого пользователи не смогут зарегистрироваться в системе, пока администратор не сбросит данное поле. Если поле оставлено пустым, учетная запись всегда будет активной.

  • Девятое поле в настоящее время всегда остается пустым; оно зарезерви­ровано на будущее.

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

millert:inNO.VAsclWn.:11031::180:14::18627:

 

В этой записи говорится о том, что пользователь millert последний раз менял свой пароль 14-го марта 2000 г. Следующий раз пароль должен быть изменен через 180 дней. За две недели до этого пользователь начнет получать предупреждения о необходимости смены пароля. Учетная запись действи­тельна до 31-го декабря 2001 г.



 (голосов: 2)
Версия для печати | Комментариев: 0
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии в данной новости.


 
Логин
Пароль
 

 
Locations of visitors to this page