LINUX.ORG.RU
решено ФорумAdmin

Postfix: авторизация в двух базах, как?

 , ,


0

1

Стоит настроеный почтовик(Postfix+dovecot) - авторизация юзеров (+хранение всех их нрастроек) в mysql базе.
Сейчас встал вопрос о миграции на AD (т.е. авторизация всех сервисов будет там). Но postfix и dovecot умеет одновременно использовать лишь один метод авторизации: LDAP или Mysql.

Можно ли как-то сделать схему, когда при авторизации юзера сначала чекается локальная mysql база, а уже потом LDAP?

★★★★★

1. Авторизовывать постфикс через довкот. Он это умеет искаропки:

smtpd_sasl_auth_enable = yes
smtpd_sasl_authenticated_header = no
smtpd_sasl_type = dovecot
smtpd_sasl_path = /var/spool/postfix/private/dovecot-sasl

2. Довкот умеет юзать сколько угодно passdb и userdb, не знаю с чего ты взял что только одну. У меня вот локальные юзеры и три вендодомена, а пароли вообще через PAM (pam_krb5 и pam_unix), хотя никто не мешает заюзать пароли из MySQL или биндинг в LDAP.

userdb {
    driver = passwd
    args = home=/home/%u mail=maildir:/home/%u
}

userdb {
    driver = ldap
    args = /etc/dovecot/dovecot-ldap-domain1.conf
}

userdb {
    driver = ldap
    args = /etc/dovecot/dovecot-ldap-domain2.conf
}

userdb {
    driver = ldap
    args = /etc/dovecot/dovecot-ldap-domain3.conf
}

passdb {
    args = cache_key=%u%r%l dovecot
    driver = pam
}
Так что заводишь в довкоте два passdb/userdb, удаляешь юзера в mysql, добавляешь в AD и вуаля.

Для авторизации в AD рекомендую юзать керберос через pam_krb5, он меньше мучает AD чем LDAP-биндинги постоянные.

blind_oracle ★★★★★ ()
Ответ на: комментарий от blind_oracle

У меня более двух лет работает связка egroupware + dovecot +mysql в 3-х компаниях. Egroupware умеет нормально авторизовать пользователей через АД, там очень гибкие настройки есть кучю всего интересного. Схема такая. Пользователи создаються в АД потом проходиться авторизация через egroupware, egroupware создает пользователя в базе ну а дальше все просто.

Есть один минус если заблокировать акк в АД egroupware блокирует только вход через web-интерфейс в самой базе не блокирует, єто нужно делать руками через веб-морду egroupware.

Возможно это не совсем то что Вам нужно но вариант проверенный и рабочий. Тестировал на 500+ пользователей.

mkgeka ()
Ответ на: комментарий от dreamer

Не за что, если будут проблемы пиши, покажу конфиги, там всё достаточно тривиально.

blind_oracle ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.