Задать вопрос
@SergeyShibka

Почему Postfix ищет пользователей от корня домена, а Dovecot нет, при авторизация через Win2008 AD?

Приветствую всех!

При авторизации из АД возникла проблема.
Имеем АД. Домен kontora.com
Пользователи домена которые будут использовать почту, лежат в разных группах и юнитах, так уж заведено было изначально.

Так вот проблема получается такая, настраиваю postfix для авторизации через АД. Создаю файл подключения: /etc/postfix/ad_sender_login_maps.cf

server_host     = kontora.com
server_port     = 389
version         = 3
bind            = yes
start_tls       = no
bind_dn         = vmail
bind_pw         = password_of_vmail
search_base     = dc=kontora,dc=com
scope           = sub
query_filter    = (&(userPrincipalName=%s)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
result_attribute= userPrincipalName
debuglevel      = 0


Тестирую:
postmap -q user1@kontora.com ldap:/etc/postfix/ad_sender_login_maps.cf

Получаю ответ:
user1@kontora.com

user1 находиться в юните "Отдел 1" в корне домена kontora.com

Тестирую:
postmap -q user2@kontora.com ldap:/etc/postfix/ad_sender_login_maps.cf

Получаю ответ:
user2@kontora.com

user2 находиться в юните "Отдел 2" в корне домена kontora.com

Уточняю: user1 и user2 находятся в разных юнитах относительно корня домена и postfix когда ищет пользователя начинает искать его от корня домена перебирая все юниты.

И теперь столкнулся с проблемой, что dovecot не ищет пользователей от корня домена, а только от одного юнита.
Т.е. создаю файл подключения: /etc/dovecot/dovecot-ldap.conf

hosts           = kontora.com:389
ldap_version    = 3
auth_bind       = yes
dn              = vmail
dnpass          = passwd_of_vmail
base            = dc=kontora,dc=com
scope           = subtree
deref           = never
user_filter     = (&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
pass_filter     = (&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
pass_attrs      = userPassword=password
default_pass_scheme = CRYPT
user_attrs      = =home=/var/vmail/vmail1/%Ld/%Ln/Maildir/,=mail=maildir:/var/vmail/vmail1/%Ld/%Ln/Maildir/


Пытаюсь подключиться к ящику клиентом и идет отлуп. Т.е. пользователь не может быть найден.

Но только стоит поправить строку подключения с
base = dc=kontora,dc=com
на
base = ou=Отдел 1,dc=kontora,dc=com
и при условии, что например user1 будет находиться в юните Отдел 1, тогда dovecot производить нормальную авторизацию.

Так вот вопрос, почему postfix нормально производит поиск пользователей по всему домену от его корня, а dovecot начинает искать только если пользователи находятся в юните. Как заставить довекот искать пользователей от корня домена?
Либо хотя бы делать поиск в группе, к которой будут привязаны почтовые пользователе, т.к. это тоже не получилось реализовать.
  • Вопрос задан
  • 436 просмотров
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
@ebutovo
Вот всем хорош довекот но не умеет он так искать сколько лет прошло а не умеет, используйте saslauthd и будет вам счастье, вот такой костыль.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы