Втупление: Управляем пользователями посредством AD. Имеем Postfix настроенный в качестве front-end для Exchange (хотя он здесь вовсе ни причем, но так многим понятней). Хотим для мобильных пользователей настроить smtp аутентификацию, но нехотим или неможем вести дополнительную базу пользователей. Решение: В данном случае будем использовать возможности PAM. Суть решения такова: Postfix для smtp аутентификации использует sasl который в свою очередь использует методsaslauthd запущенный с опцией -a pam. Система, зная о сервисе smtp, в данном случае FreeBSD 4.x для аутентификации пользователя из AD использует pam_ldap. Данная статья предполагает, что у вас Postfix 2.х собран с поддержкой cyrus-sasl2и установлен cyrus-sasl2-saslauthd. Также надо установить pam_ldap. 1. cyrus-sasl надо указать метод аутентификации: cat /usr/local/lib/sasl2/smtpd.conf pwcheck_method: saslauthd Этот метод работает только с паролями plain и login. Saslauthd запускаем с опцией "-a pam" 2. postfix надо сообщить о smtp аутентификации через sasl: smtpd_sasl_auth_enable = yes smtpd_sasl_application_name = smtpd smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = $myhostname smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination 3. PAM надо знать о сервисе smtp и и какой модуль применять: cat /etc/pam.conf # Mail services smtp auth sufficient /usr/local/lib/pam_ldap.so 4. pam_ldap для взаимодействия с AD использует ldap.conf следующего вида: base dc=domain,dc=org scope sub uri ldap://server.domain.org port 389 ldap_version 3 binddn cn=ldap,cn=Users,dc=domain,dc=org bindpw qwerty pam_filter objectclass=User pam_login_attribute sAMAccountName pam_password ad В этом примере в контейнере Users в Active Directory Users and Copmputers был создан пользователь ldap с паролем qwerty. Он нужен для подключения к AD и поиска атрибутов логин/пароль. Соответственно значения server, domain, org а также имя пользователя поменяйте на свои. На файл ldap.conf можно поставить права 600. В случае если всё прошло удачно в maillog видим: postfix/smtpd[28892]: 4ACBCEDE11: client=my-host[192.168.12.6], sasl_method=PLAIN, sasl_username=my-user@mx.domain.org Вывод: Одна учетная запись - это удобно. Идею можно применить и для других служб (ftp, pop, imap и т.д.).