Теневой файл паролей

Поскольку файл /etc/passwd обычно общедоступен для чтения, на узлах с повышенными требованиями к защите, как правило, используется схема теневого пароля, доступная в большинстве операционных системUNIX. Смысл в том, что зашифрованные пароли переадресуются другому файлу, который может содержать (либо нет) другую информацию. Эта схема используется потому, что при неудачном выборе пароля современные машины вполне могут его взломать. К неудачному выбору можно отнести любое слово из словаря, регистрационное имя, отсутствие пароля или любую информацию, включенную в поле uid comment. Схемы применения теневых файлов паролей в разных версиях UNIX имеют значительные отличия.

Например, в системах IRIX и Solaris существует файл /etc/shadow, генерируемый командой pwconv, которая имеет следующий формат:

user-name: pswd: lastchg:min:max: warn: inactive: expire: flag

username - это копия имени пользователя из файла /etc/passwd.

Поле pswd содержит либо зашифрованный пароль длиной в 13 символов, либо null-значение, указывающее, что для входа в систему пароль не нужен, либо строку, содержащую символ, не принадлежащий множеству {./0-9 A-Z a-z}. Если пароль содержит символ, не являющийся алфавитно-цифровым, для данного пользователя вход в систему невозможен. Обычно системные администраторы используют для записи в это поле символ * или *LK*.

Поле lastchg определяет число дней, прошедших с 1 января 1970 г., когда пароль последний раз изменялся. Поле min задает минимальное число дней, которое должно пройти от успешной смены пароля до другой смены.

Поле тах содержит максимальное число дней действия пароля.

Поле warn содержит число дней до истечения срока действия пароля, в течении которых пользователь будет получать об этом предупреждения.

Поле inactive определяет число дней, в течение которых пользователь может оставаться неактивным, после чего ему не будет отказано во входе в систему.

Поле expire указывает на абсолютное число дней. Если оно используется, то определяет срок, после которого имя пользователя не будет давать права на вход в систему. Поле flag в настоящее время не используется.

В системе HP-UX принята другая схема сокрытия файла пароля. Для каждого имени пользователя существует файл /tcb/files/auth/first letter/username, где first letter - начальная буква имени пользователя, а username - регистрационное имя пользователя. Например, для пользователя buster будет существовать файл /tcb/files/auth/b/buster. Этот файл содержит информацию, проявляющуюся как termcap. В последних версиях системы файл поддерживал до 32 возможных опций, имеющих отношение к защите данных пользователя. Список имен полей и их возможных значений содержится в странице руководства для утилиты prpwd(4). В общем случае файл содержит:

Имя пользователя и его идентификатор, скопированные из файла пароля.

Зашифрованный пароль, если он существует.

Имена:

  • владельца бюджета;
  • последнего бюджета, для которого был изменен пароль;
  • терминала или хоста, для которого была предпринята последняя успешная или неудачная попытка входа.

Данные о времени, указывающие:

  • число секунд, допустимое между успешными сменами пароля;
  • когда заканчивается срок действия пароля (необходима смена пароля в следующем сеансе);
  • когда пароль прекращает существование (только системный администратор может вновь раз решить вход в систему);
  • когда в последний раз предпринималась попытка успешной или неудачной смены пароля;
  • когда истекает срок действия бюджета (абсолютное смещение со времени смены пароля);
  • Максимальный промежуток времени, допустимый между входами в систему;
  • за какой промежуток времени до истечения срока действия пароля следует уведомить пользователя;
  • время дня, когда для бюджета допускаются входы в систему;
  • когда в последний раз предпринималась успешная или неудачная попытка входа в систему.

Флаги, определяющие:

  • допустима ли для пользователя загрузка системы;
  • выполняется ли проверка имени пользователя;
  • может ли пользователь выбрать пароль бюджета, или должен использовать тот, что сгенерирован системой;
  • может ли система сгенерировать пароль бюджета для пользователя;
  • должен ли выбранный пароль подвергаться проверке на предмет легкости угадывания;
  • может ли бюджет не иметь пароля (значение null);
  • может ли пользователь генерировать символы для пароля "случайным образом";
  • блокирован ли бюджет администратором.

Числа, указывающие:

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

В системах BSD применяется еще одна разновидность системы сокрытия пароля, использующая файлы /etc/master.passwd или /etc/spwd.db.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: