Dovecot/AD-auth: различия между версиями
Нет описания правки |
Нет описания правки |
||
Строка 1: | Строка 1: | ||
Dovecot поддерживает Kerberos5 используя GSSAPI. При использовании механизма Kerberos-аутентификации пропадает необходимость в файле passdb, но вам до сих пор потребуется файл userdb, для хранения специфичной пользовательской информации, например пути к их почтовым ящикам.<br> | Dovecot поддерживает Kerberos5 используя GSSAPI. При использовании механизма Kerberos-аутентификации пропадает необходимость в файле passdb, но вам до сих пор потребуется файл userdb, для хранения специфичной пользовательской информации, например пути к их почтовым ящикам.<br> | ||
Строка 41: | Строка 40: | ||
<pre>a authenticate GSSAPI | <pre>a authenticate GSSAPI | ||
+</pre> | +</pre> | ||
[[Категория:Dovecot]] [[Категория:Active Directory]] |
Текущая версия от 11:00, 16 марта 2017
Dovecot поддерживает Kerberos5 используя GSSAPI. При использовании механизма Kerberos-аутентификации пропадает необходимость в файле passdb, но вам до сих пор потребуется файл userdb, для хранения специфичной пользовательской информации, например пути к их почтовым ящикам.
Эта статья предполагает, что у Вас уже есть настроенная Kerberos-область (realm) и что вы уже получили keytab-файл содержащий принципала нужного сервиса (Создание_SPN_и_Keytab_файла).
По-умолчанию Dovecot будет использовать системный keytab-файл (обычно он находится по пути /etc/krb5.keytab), изменить это можно с помощью параметра auth_krb5_keytab в конфигурационном файле /etc/dovecot/dovecot.conf. В любом случае keytab-файл должен быть доступен для чтения пользователю dovecot (или пользователю от имени которого выполняется процесс аутентификации). Если вы используете IMAP, необходимо создать принципала сервиса imap. Для POP3 необходимо создать принципала сервиса pop.
Переместим полученный keytab-файл в папку /etc/dovecot.
Изменим группу и права доступа keytab-файлу:
# chgrp dovecot /etc/dovecot/dovecot.keytab # chmod 640 /etc/dovecot/dovecot.keytab
Убедимся что в keytab-файле есть необходимые нам ключи imap/doserver.domg.testg@DOMG.TESTG:
# klist -Kek /etc/dovecot/dovecot.keytab Keytab name: FILE:/etc/dovecot/dovecot.keytab KVNO Principal ---- -------------------------------------------------------------------------- 3 imap/doserver.domg.testg@DOMG.TESTG (arcfour-hmac) (0xada8d721251fe9f5614f7fd9bbeff919)
Для использования Kereberos-аутентификации на основе билетов добавьте в файл /etc/dovecot/conf.d/10-auth.conf следующие параметры:
auth_gssapi_hostname = "$ALL" auth_mechanisms = gssapi auth_krb5_keytab = /etc/dovecot/dovecot.keytab
И раскомментировать строчку:
!include auth-system.conf.ext
Также в PAM модуль /etc/pam.d/dovecot, используемый dovecot, необходимо добавить следующие строки:
auth sufficient pam_krb5.so account sufficient pam_krb5.so
Установив необходимый pam-модуль:
# apt-get install pam_krb5
Проверим работоспособность kerberos-аутентификации. Для этого установим пакет telnet:
# apt-get install telnet
Подключимся к нашему серверу:
# telnet localhost 143 * OK [CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE IDLE STARTTLS LOGINDISABLED AUTH=GSSAPI] Dovecot ready.
Проверим возможность аутентификации GSSAPI:
a capability * CAPABILITY ... AUTH=GSSAPI
Проверим первичную GSS коммуникацию. "+" означает что сервер готов:
a authenticate GSSAPI +