Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Bosy.docx
Скачиваний:
45
Добавлен:
24.06.2017
Размер:
3.14 Mб
Скачать

17. Упр-е польз-ми в ос Linux. Хар-ки пароля польз-ля. Формат файла /etc/shadow

Одни системы настаивают на фиксированной минимальной длине пароля, другие – на содержании в пароле хотя бы одного небуквенного символа.

Формат файла /etc/shadow. Пароли (или их зашифрованное представление) хранятся в файле /etc/shadow, доступ к которому имеет только суперпольз-ль. Формат файла:

name:password:lastchange:minage:maxage:warning:inactive :expire:blank

name – имя пользов-ля для входа в систему password – зашифрованный пароль (хэш)

Если это поле пустое, то пароль отсутствует. Если ! или *, то учётная запись заблокирована (вход никогда не осуществится)

  • lastchange – дата последнего изм-я пароля (кол-во дней с 01.01.1970)

  • minage – минимальное кол-во дней между изменениями пароля

  • maxage – максимальное кол-во дней, когда пароль действителен

  • warning – период предупреждения о том, что срок действия пароля истекает (в днях). 0 означает, что не надо предупреждать

  • inactive – кол-во дн, когда уч. запись будет активна после истечения действия пароля

  • expire – истекает абс. дата, после которой уч. запись будет отключена

  • blank – пустое поле (резерв для будущего исп-я)

Хэш пароля. Современный хэш паролей файла /etc/shadow состоит из 3х частей ($ - знак разделения): $1$gCjLa2/Z$6Pu0EK0AzfCjxjv2hoLOB/

  1. 1 – алгоритм хэширования. Число 1 значит, что использовался MD5. Или, например, число 6 означает, что использовался SHA-512.

  2. gCjLa2/Z – соль, используемая для создания хэша (соль и незашифрованный пароль объединяются и хэшируются).

  3. 6Pu0EK0AzfCjxjv2hoLOB/ – итоговый хэш пароля.

Когда польз-ль пытается войти в систему, система просматривает запись для польз-ля в /etc/shadow, объединяет соль для польз-ля с незашифрованным паролем, который был введен, и шифрует их с исп-ем указанного алгоритма хэширования. Если результат соотв-ет зашифрованному хэшу, польз-ль вводит правильный пароль. Если результат не соотв-ет зашифрованному хэшу, польз-ль вводит неверный пароль и попытка входа в систему не выполн-ся. Этот метод позволяет системе определить, набрал ли польз-ль правильный пароль, не сохраняя этот пароль в форме, пригодной для входа в систему.

18. Упр-е польз-лями в ос Linux.

Подгружаемые аутентификационные модули (Pluggable Authentication Modules) - набор API для аутентификации польз-лей.

Файл /etc/pam.conf состоит из строк след. формата:

Имя_службы Тип_модуля Управляющий_флаг Модуль_PAM Аргументы

Имя службы (сервиса) – программа, к которой относится данная строчка. Т.е. при вызове этой программы открывается файл /etc/pam.conf и выполняются все строчки, связанные с этой программой. Все строчки, связанные с этой программой, образуют стек модулей, который выполняется послед-но. Результат работы зависит от порядка команд (модулей).

Программы, использующие PAM (службы): login, su, sudo, passwd, screen и т.д.

Тип модуля (тип действия) – один из четырех вариантов (управляющие группы):

  1. auth - подтверждение личности польз-ля. Обычно это имя польз-ля и пароль.

  2. account - действия, определяющие, можно ли польз-лю зайти в систему. Напр, ограничение входа польз-ля в систему в зав-ти от времени суток.

  3. session - действия по выделению ресурсов, кот. могут потребоваться польз-лю во время сессии, напр, установка лимитов на исп-е ресурсов системы, вывод ежедн. сообщ-я и т.д.

  4. password - действия по обновлению «секрета» польз-ля (обычно пароля).

Управляющий флаг – как система реагирует на результат модуля. Варианты:

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

  • required - если модуль завершается с ошибкой, PAM возвращает ошибку приложению, но продолжает вызывать остальные модули стека.

  • sufficient - если модуль завершается успешно, PAM возвращает приложению результат «выполнен», и остальные модули стека не вызываются.

  • optional - результат работы модуля (выполнен/ошибка) игнорируется.

  • include - включает все строки из конфигурационного файла, переданного в качестве аргумента (фактически вызов функции).

Основные модули PAM (далее расписано Модуль (действие): описание)

  • pam_unix (auth, session, password): Выполняет аутентификацию, используя хэши паролей, которые хранятся в /etc/shadow.

  • pam_limits (session): Устанавливает огр-я на системные ресурсы, отпускаемые на время пользовательского сеанса. Можно задать жесткие и мягкие границы для таких параметров, как макс. число процессов, макс. размер файла, процессорное время и т.д.

  • pam_rootok (auth): Завершается успешно, если вы – администратор системы, и возвращает ошибку в противном случае

  • pam_cracklib (password): Проверяет качество пароля, затем еще раз проверяет пароль по системному словарю и ряду правил «плохого подбора пароля»

  • pam_passwdqc (password): Альтернат. модуль для проверки качества пароля

  • pam_permit (auth, account, session, password): Всегда говорит «да» и возвращает успешный результат выполнения

  • pam_deny (auth, account, session, password): Всегда говорит «нет» и возвращает ошибку

  • pam_warn (auth, account, session, password): Просто отправляет сообщение (включая имя сервиса, терминал, имя польз-ля и удаленный хост) службе журнала syslogd.

  • pam_wheel (auth, account): Исп-ся программами типа su. Этот модуль разрешает администраторский доступ только польз-лям, включенным в группу wheel.

Вообще-то /etc/pam.conf устарел и вместо него используют папку /etc/pam.d/, в кот. хранятся файлы с именами служб (login, su, passwd и т. д.). Сами же модули PAM хранятся в папке /lib64/security/ и наз-ся pam_rootok.so, pam_wheel.so и по аналогии.

Соседние файлы в предмете Безопасность операционных систем