Оглавление Оглавление 1
Вид материала | Документы |
- Кожич Павел Павлович Минск 2010 г Оглавление Оглавление 2 Применение информационных, 302.47kb.
- Оглавление оглавление, 63.5kb.
- Оглавление Оглавление, 259.29kb.
- Ланин Борис Евсеевич Оглавление Оглавление 1 лекция, 810.53kb.
- Оглавление: Оглавление:, 350.3kb.
- Октябрьской Революции Краснознаменной академии (ввиа) имени профессора Н. Е. Жуковского, 1685.68kb.
- Караваева Елена Леонидовна г. Светлый 2008 г. Оглавление оглавление 2 пояснительная, 130.81kb.
- Винарский Владимир Афанасьевич ассистент Шешко Сергей Михайлович Минск 2008 г. Оглавление, 156.88kb.
- Коледа Виктор Антонович, ст преподаватель Пол Кожич Минск 2010 г. Оглавление Оглавление, 340.48kb.
- Обуховский Виктор Степанович, ассистент Позняков Андрей Михайлович Минск 2006 г оглавление, 266.12kb.
Упражнения
Упражнение 1:
- Установите и настройте сервер OpenLDAP
- Воспользуйтесь утилитой ldap-account-manager, чтобы создать пользователей и группы (отключите Samba в файле конфигурации LAM)
- Используйте каталог LDAP как репозиторий email адресов для вашего любимого почтового клиента
Решения
Решение 1 :
- Следуйте инструкциям этой главы
Аутентификация PAM
- Ключевые файлы, термины и утилиты:
- Ключевые файлы, термины и утилиты:
/etc/pam.d
pam.conf
Настройка PAM
Введение
Подключаемые модули аутентификации (PAM - Pluggable Authentication Modules) упрощают реализацию процедуры аутентификации для различных программ. Как правило, в системе Linux существует несколько программ, требующих аутентификации: login, su, ftpd, sshd, ... Поскольку все они используют библиотеки PAM, довольно легко настраивать новые механизмы аутентификации или исправлять проблемы с безопасностью в одном месте без необходимости перекомпиляции всех этих программ.
Модули PAM допускают аутентификацию с помощью LDAP, Samba, смарт-карт, USB-ключей, баз данных SQL и т.п.
Настройка
Библиотеки PAM настраиваются в /etc/pam.d :
[root@test pam.d]# ls
chfn ftp kbdrate kppp login passwd ppp sieve squid sudo xdm
chsh halt kde3 kscreensaver3 net_monitor pop reboot simple_root_authen sshd system-auth xserver cups imap kde3-np lmtp other poweroff secure-mcserv smtp su webmin*
[root@test pam.d]#
Все файлы выглядят примерно так:
[root@test pam.d]# cat login
#%PAM-1.0
auth required pam_securetty.so
auth required pam_stack.so service=system-auth
auth required pam_nologin.so
account required pam_stack.so service=system-auth
password required pam_stack.so service=system-auth
session required pam_stack.so service=system-auth
session optional pam_console.so
[root@test pam.d]#
В каждой строке указан тип модуля, управляющий флаг и используемая библиотека PAM вместе с ее опциями.
Тип модуля
Тип модуля может принимать одно из следующих значений:
- auth
Модуль этого типа устанавливает, что пользователь именно тот, за кого себя выдает, предписывая приложению запросить у пользователя пароль или идентифицировать себя другим способом.
- account
Этот модуль занимается управлением учетными записями. Обычно он используется для разрешения / запрещения доступа к сервису, основываясь на времени суток, имеющихся системных ресурсах (максимальном числе пользователей), проверке срока действия учетной записи и т.п.
- session
Этот модуль отвечает за выполнение действий, производимых до или после того как пользователь получит какой-либо сервис. Такого рода действия включают регистрацию сведений об обмене данными с пользователем в журналах, монтирование каталогов и т.п.
- password
Последний тип модуля служит для обновления ключа аутентификации (authentication token) пользователя. Обычно существует один такой модуль для каждого модуля типа auth, осуществляющего аутентификацию по схеме «вызов/отклик». Модули данного типа управляют паролями.
Управляющий флаг
Управляющий флаг служит для индикации того, как библиотека PAM будет реагировать на успешный или неуспешный результат работы модуля, с которым этот флаг ассоциирован. Приложение получает сводный отчет от библиотеки PAM об успешном или неуспешном выполнении.
Порядок исполнения модулей совпадает с порядком их перечисления в конфигурационном файле сервиса PAM.
Существует четыре управляющих флага:
- required
Флаг означает, что для успешного завершения работы требуется успешное выполнение данного модуля.
- requisite
Поведение похоже на флаг required, однако в случае неуспешного выполнения модуля управление возвращается приложению. Возвращаемое значение – это значение, ассоциированное с первым неудачно завершившимся модулем, имеющим флаг required или requisite.
- sufficient
Успешное выполнение модуля достаточно для того, чтобы библиотека PAM считала, что тип модуля успешно выполнил свое предназначение. Неуспешное же выполнение не будет считаться фатальным для принятия решения об успешности выполнения типа модуля.
- optional
Как и предполагает имя этого флага, успешное или неуспешное исполнение модуля не является критичным для пользовательского приложения. Как правило, PAM игнорирует такой модуль, когда определяет успешность выполнения всего стека модулей. Однако, в отсутствии какого-либо определенного успешного или неуспешного статуса выполнения предыдущего или последующего модуля, этот модуль будет определять статус значения, возвращаемого приложению.
Модули библиотеки PAM
Существует множество модулей PAM, среди них:
- pam_pwdb.so : традиционная аутентификация при помощи файла passwd
- pam_security.so : добавляет дополнительные ограничения (/etc/securetty)
- pam_mount.so : монтирует домашние каталоги во время входа в систему
- pam_usb.so : аутентификация с помощью USB-ключа
- pam_ldap.so : использует каталог LDAP для аутентификации в системе
- pam_smb.so : использует Samba для аутентификации в системе
- pam_mysql.so : аутентификация с помощью базы данных MYSQL
- pam_krb5.so : аутентификация с помощью протокола MIT Kerberos 5
- pam_opensc.so : аутентификация с помощью смарт-карты
- ...
Наиболее часто используемые опции модулей:
Основные опции модулей:
- no_warn
Запрещает модулю выдавать предупреждающие сообщения приложению.
- use_first_pass
Модуль не должен запрашивать пароль у пользователя, вместо этого модуль должен использовать ранее набранный пароль (от предыдущего модуля auth). Если это не сработает, пользователь не пройдет аутентификацию (данная опция применима к модулям auth и password).
- try_first_pass
Модуль должен попробовать аутентифицировать пользователя по ранее набранному паролю (от предыдущего модуля auth). Если аутентификация не удалась, пароль будет запрошен у пользователя. (Эта опция применима только к модулям auth).