РАМ выполняет роль посредника между программами, которым требуется аутентификация (например, сервером FTP, программой login
, инструментами регистрации, работающими в среде X Window), и базами данных, в которых хранится информация о пользователях, в частности пароли (/etc/passwd
, /etc/shadow
и другие файлы стандартного пакета Linux). Процедуры аутентификации оформляются в виде отдельной библиотеки. В этом случае файлы, применяемые для аутентификации, могут быть без труда модифицированы, а программы, использующие их, остаются без изменений. Для поддержки нового формата файлов модифицируются только РАМ. В этом смысле реализация средств поддержки Kerberos в виде РАМ является почти идеальным решением, позволяющим обеспечить совместную работу с Kerberos многих приложений. Любые изменения не затрагивают прикладные программы, которые взаимодействуют только с РАМ.
Поддержка Kerberos с помощью РАМ имеет свои ограничения. В частности, если код программы построен так, что программа запрашивает имя пользователя и пароль, ее поведение не изменится при замене РАМ на модуль, поддерживающий Kerberos. Полученные данные программа передаст РАМ, и он предпримет попытку аутентификации с использованием базы данных Kerberos. Так, например, РАМ не устраняет необходимость ввода имени пользователя и пароля при работе с FTP-сервером, но позволяет следить за текущим паролем и приводить его в соответствие с данными для области Kerberos. Если речь идет о керберизованных программах, выполняющих регистрацию пользователя, то такая особенность не является недостатком, так как программы регистрации в любом случае запрашивают пользовательское имя и пароль.
Несмотря на то что РАМ может выступать в роли универсального средства аутентификации и поддерживается во всех версиях Linux и во многих системах, отличных от Linux, керберизованные версии РАМ мало распространены. Ниже описаны некоторые из таких модулей, которые были доступны в момент написания данной книги.
• Модуль Деррика Брешера (Derrik Brashier). Этот модуль предназначен для использования совместно с Kerberos V4. Он расположен по адресу ftp://ftp.dementia.org/pub/pam/
; имена файлов, содержащих этот модуль, начинаются символами pam_krb4
. Выберите самый новый из файлов (во время написания данной книги все файлы датировались 1998 г.). Данный модуль распространяется в исходных кодах, поэтому перед использованием его надо скомпилировать.
• Модуль Фрэнка Кусека (Frank Cusack). Модуль РАМ, поддерживающий MIT Kerberos V5 и Heimdal, находится по адресу http://www.nectar.com/zope/krb/
. Этот пакет доступен в исходных кодах; изначально коды были написаны для Solaris, но после компиляции они будут работать в системе Linux.
• Модуль Кертиса Кинга (Curtis King). Этот модуль доступен по адресу ftp://ftp.dementia.org/pub/pam/
; имя файла — pam_krb5-1.1.3.tar.gz
. Данный модуль также требует компиляции, в ходе которой могут возникнуть проблемы.
• Модуль для системы Red Hat. Модуль РАМ Kerberos V5 входит в состав дистрибутивного комплекта Red Hat под именем pam_krb5
. Данный вариант РАМ поставляется в виде двоичного кода в формате поэтому чрезвычайно просто устанавливается в Red Hat и других подобных системах. При подготовке материала данной главы я использовал именно этот тип модуля, хотя следует отметить, что точно так же работает модуль Фрэнка Кусека.
• Модули для системы Debian. В Debian и других подобных системах работа с Kerberos V5 и Heimdal поддерживается соответственно модулями libpam-krb5
и libpam-heimdal
. На Web-узле Debian эти пакеты найти достаточно сложно, поэтому лучше скопировать их, обратившись по адресам http://ftp.nl.debian.org/debian/pool/non-US/main/libp/libpam-krb5/
и http://ftp.nl.debian.org/debian/pool/non-US/main/libp/libpam-heimdal/
.
Вильям Л Саймон , Вильям Саймон , Наталья Владимировна Макеева , Нора Робертс , Юрий Викторович Щербатых
Зарубежная компьютерная, околокомпьютерная литература / ОС и Сети, интернет / Короткие любовные романы / Психология / Прочая справочная литература / Образование и наука / Книги по IT / Словари и Энциклопедии