Показаны различия между двумя версиями страницы.
postfix_dovecot_active_directory [2013/05/07 19:01] metallic [Dovecot] |
postfix_dovecot_active_directory [2022/03/25 17:00] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Почта Postfix + Dovecot с интеграцией в MS Active Directory ====== | ||
- | ===== Введение ===== | ||
- | В данной статье я хочу структурировать клочки информации по теме, которые мне удалось найти в интернете. Данная тема не новая, но внятного-понятно howto, с пояснениями и т.д. найти не удалось, | ||
- | Итак, в данном мануале будет рассмотрен вопрос разворачивания внутренней корпоративной почты, т.е. почта которая работает только в пределах локальной сети, для внутренних нужд организации, | ||
- | |||
- | Для чего все это нужно? Ну, во-первых, | ||
- | |||
- | Итак, имеем домен под управлением Windows Server 2012, режим леса и режим домена - 2012. Почтовый сервер - GNU/Debian 7.0 (Postfix 2.9, Dovecot 2.1). | ||
- | |||
- | ===== Dovecot ===== | ||
- | Начнем с Dovecot. Конфиг у него достаточно объемный, | ||
- | |||
- | / | ||
- | # Включаем plaintext аунтификацию, | ||
- | # А если нужна безопасность, | ||
- | disable_plaintext_auth = no | ||
- | | ||
- | / | ||
- | # Указываем куда класть дополнительные логи | ||
- | | ||
- | debug_log_path = / | ||
- | | ||
- | # Ну и включаем всевозможные логи, помогут нам при отладке, | ||
- | # особенно логирование паролей | ||
- | | ||
- | auth_verbose = yes | ||
- | auth_debug = yes | ||
- | auth_debug_passwords = yes | ||
- | mail_debug = yes | ||
- | | ||
- | / | ||
- | # Указываем путь, по которому будет хранится пользовательская почта, также указываем формат(maildir) | ||
- | # %u - полное имя пользователя(с доменной частью: | ||
- | # %n - короткое имя пользователя(без доменной части: user) | ||
- | # %d - доменная часть(domail.local), | ||
- | # %h - домашний каталог, | ||
- | | ||
- | mail_location = maildir:/ | ||
- | | ||
- | # Два нижних параметра очень важны, они указывают дефолтные uid и gid пользователя, | ||
- | # не удалось извлечь из AD. Эти данные используются для установки прав доступа к maildir пользователя. | ||
- | # Почтовику нужно знать хотя бы uid, иначе, если не указать эти данные, | ||
- | # " | ||
- | # поля: uidNumber и gidNumber, но они пусты по-умолчанию, | ||
- | # никакого смысла, | ||
- | # показывать как это делать) и смотрим идентификатор этого пользователя и идентификатор его группы | ||
- | # (id vmail), затем вписываем их в параметры ниже. Теперь вся почта будет принадлежать пользователю vmail. | ||
- | | ||
- | mail_uid = 1001 | ||
- | mail_gid = 1001 | ||
- | |||
- | / | ||
- | # Local Delivery Agent - через этот механизм postfix будет контактировать с dovecot. | ||
- | protocol lda { | ||
- | hostname = mail.domain.local | ||
- | mail_plugin_dir = / | ||
- | postmaster_address = admin@domail.local | ||
- | sendmail_path = / | ||
- | } | ||
- | | ||
- | / | ||
- | passdb { | ||
- | driver = ldap | ||
- | args = / | ||
- | } | ||
- | | ||
- | userdb { | ||
- | driver = ldap | ||
- | args = / | ||
- | | ||
- | # Тут мы снова задаем дефолтные значения для некоторых важных параметров | ||
- | default_fields = home=/ | ||
- | } | ||
- | | ||
- | / | ||
- | # Задаем адрес нашего DC, либо его имя. А еще лучше указать имя домена domain.local, | ||
- | # соединение будет устанавливаться с любым доступным DC в домене(при условии корректно | ||
- | # функционирующего DNS). Но на этапе отладки лучше прописать IP-адрес. | ||
- | uris = ldap:// | ||
- | | ||
- | # Здесь прописываем путь к пользователю, | ||
- | # необходимой информации. В целях безопасности этот пользователь должен иметь права только на чтение. | ||
- | # Пользователя в AD нужно создать заранее. Вроде, здесь можно использовать формат reader@domail.local | ||
- | dn = cn=reader, | ||
- | | ||
- | # Пароль этого пользователя. | ||
- | dnpass = passw0rd | ||
- | | ||
- | # Использовать ли защищенное соединение? | ||
- | tls = no | ||
- | | ||
- | # Подключаться к AD | ||
- | auth_bind = yes | ||
- | | ||
- | # Формат имени пользователя | ||
- | auth_bind_userdn = %n@domain.local | ||
- | | ||
- | # Версия протокола | ||
- | ldap_version = 3 | ||
- | | ||
- | # Где искать пользователей, | ||
- | # всех подразделениях | ||
- | base = ou=AllUsers, | ||
- | | ||
- | deref = searching | ||
- | | ||
- | scope = subtree | ||
- | | ||
- | # Фильтрация пользователей. Также указываем по чему будем идентифицировать их. Если домен AD и | ||
- | # почтовый домен совпадают - проще всего по userPrincipalName, | ||
- | user_filter = (& | ||
- | pass_filter = (& | ||
- | | ||
- | На этом все, теперь можно попробовать почтовым клиентом забрать почту. В качестве логина нужно указывать имя пользователя с доменной частью: | ||
- | <note important> | ||
- | Не забудьте назначить владельцем каталога /srv/vmail пользователя vmail. | ||
- | </ | ||