Я пытаюсь авторизовать пользователя активного каталога в красной шапке Linux 6.5. Для этого я использую saslauthd. Это его конфигурация:
/etc/saslauthd.conf:
ldap_servers: ldap://activeDirectoryHost.us-west-2.compute.amazonaws.com
ldap_use_sasl: yes
ldap_mech: DIGEST-MD5
ldap_auth_method: fastbind
/ и т.д. / sysconfig / saslauthd:
SOCKETDIR=/var/run/saslauthd
MECH=ldap
DAEMONOPTS=--user saslauth
FLAGS="-O /etc/saslauthd.conf"
Активный каталог работает нормально, потому что, когда я запускаю в нем поиск, я получаю правильный ответ. Для поиска я использую команду ldapsearch из терминала Red Hat:
ldapsearch -LLL -H ldap://activeDirectoryHost.us-west-2.compute.amazonaws.com -x -D 'testUser@ACTIVEDIRECTORY_TEST.es' -w 'psswd12345' -b 'OU=Domain Controllers,DC=ACTIVEDIRECTORY_TEST,DC=es
Проблема в saslauthd. Я запускаю тест следующей командой:
testsaslauthd -u 'testUser@ACTIVEDIRECTORY_TEST.es' -p 'psswd12345' -f /var/run/saslauthd/mux
И я всегда получаю одну и ту же ошибку:
0: NO "authentication failed"
Файлы журнала не дают мне дополнительной информации:
saslauthd[1690]: Retrying authentication
saslauthd[1690]: do_auth: auth failure: [user=testCorreos2] [service=imap] [realm=] [mech=ldap] [reason=Unknown]
Кто-нибудь знает, каким может быть решение?
Я решил проблему. Ошибка заключалась в том, что я пытался подключиться к Active Directory, не настраивая пользователя, у которого были разрешения для дерева ldap.
Решение такое:
1- Создайте пользователя с ролью root в Active Directory
2- Настройте saslauthd для входа в Active Directory с этим пользователем
ldap_servers: ldap://activeDirectoryHost.us-west-2.compute.amazonaws.com
ldap_mech: PLAIN
ldap_filter: cn=%u,CN=Users,DC=ACTIVEDIRECTORY_TEST,DC=es
ldap_search_base:CN=Users,DC=ACTIVEDIRECTORY_TEST,DC=es
ldap_filter:(cn=%u)
ldap_bind_dn:CN=ldapAdmin,CN=Users,DC=ACTIVEDIRECTORY_TEST,DC=es
ldap_password:12345pwdss