Group :: System/Libraries
RPM: courier-authlib
Main Changelog Spec Patches Sources Download Gear Bugs and FR Repocop
Установка и настройка courier-authlib в ALT Linux:
--------------------------------------------------
courier-authlib обеслуживает запросы на авторизацию и получение доп. информации
о пользователях (uid/gid, homedir/maildir, etc) от пакетов Courier. Пакеты,
использующие courier-authlib:
courier-imap
courier-maildrop
Поддерживаются следующие источники информации о пользователях:
- MySQL, PgSQL, BerkeleyDB;
- каталоги LDAP (OpenLDAP);
- PAM
Подробности см. на http://www.courier-mta.org/authlib/ и в документации к пакету
courier-authlib.
Список пакетов для ALT Linux:
-----------------------------
libcourier-authlib - разделяемые библиотеки
courier-authlib - общие файлы и утилиты, демон авторизации authdaemon
(поддержка авторизации через PAM)
courier-authlib-userdb - Berkeley DB backend plug-in
courier-authlib-ldap - LDAP backend plug-in
courier-authlib-mysql - MySQL backend plug-in
courier-authlib-pgsql - PostgreSQL backend plug-in
Конфигурационные файлы courier-authlib размещаются в /etc/courier-authlib/:
authdaemon.conf -- конфиг демона авторизации authdaemon. Конфиги backend'ов
- в соответствующих файлах authdaemon-(ldap|pgsql|mysql).conf.
Для userdb отдельного файла конфигурации не требуется. BerkleyDB-файлы userdb.db
и userdbshadow.db создаются из исходного файла /etc/courier-authlib/users при
помощи команды makeuserdb (man makeuserdb).
Настройка пакета courier-authlib:
---------------------------------
/etc/courier-authlib/authdaemon.conf -
указать в authmodulelist необходимые модули авторизации.
Возможно использование одновременно нескольких backen'ов, но необходимо учитывать
следующее:
- следующий по списку модуль используется для поиска информации о пользователе
если предыдущий модуль не смог найти указанного пользователя;
- в случае, если модуль вернул ошибку (например, недоступен ldap- или sql- сервер,
либо невозможно получить данные от bakend'a и т.п.) - следующие по списку
модули НЕ ПРОВЕРЯЮТСЯ.
подробности см. в man 7 authlib
/etc/courier-authlib/authdaemon-(ldap|pgsql|mysql).conf -
сделать настройки соответствующего backend'а. Файлы конфигурации хорошо
документированы. За подробностями - в /usr/share/doc/courier-authllib-x.x.x/
Запуск authdaemon:
# service courier-authdaemon start
Проверка работоспособности производится утилитой authtest после успешной настройки
какого-либо backend'а и добавления почтового пользователя.
# authtest newmailuser
Authentication succeeded.
Authenticated: newmailuser (uid 117, gid 117)
Home Directory: /var/vmail/newmailuser
Maildir: /var/vmail/newmailuser/mail
Quota: (none)
Encrypted Password: {MD5}CY9rzUYh03PK3k6DJie09g==
Cleartext Password: test
Options: (none)
Courier-authlib и PAM
---------------------
Начиная с версии 0.57-alt1 authdaemon выполняется с привилегиями пользователя courier.
Это не позволяет использовать авторизацию через PAM с конфигурацией "из коробки".
Для восстановления предыдущего режима работы необходимо в файле конфигурации
/etc/courier-authlib/authdaemon.conf изменить значения параметров COURIER_UID="courier" и
COURIER_GID="courier" на COURIER_UID="root" COURIER_GID="root". Либо добавить
пользователя courier в группу auth. Но делать этого не рекмендуется по соображениям
безопасности.
В качестве альтарнативы для пользователей, авторизуемых через PAM, рекомендуется
рассмотреть схему с виртуальными почтовыми ящиками. Такая схема подразумевает
независимые хранилища паролей пользователей для доступа к системе (console, ssh etc)
и паролей доступа к почтовому ящику посредством POP3/IMAP4. Это позволяет НЕ использовать
один и тот же пароль для доступа как к почтовому ящику, так и к системе (ssh, console).
Доступ к информации о почтовых ящиках осуществляется через один из backend'ов authdaemon'а.
Наиболее простой способ организации такой схемы - использование userdb backend.
См. man userdb , man makeuserdb и README-ALT из пакета courier-imap.