Ошибка аутентификации SASL LDAP
пытаюсь использовать SASL
и LDAP
для аутентификации пользователя в RedHat Linux
. До сих пор я настроил saslauthd
обслуживание и его запуск. Мой /etc/saslauthd.conf
выглядит следующим образом:
ldap_servers: ldaps://test.ldap.server:1234
ldap_use_sasl: yes
ldap_mech: DIGEST-MD5
ldap_auth_method: fastbind
ldap_search_base: Ou=PeopleAuthSrch,DC=abc,DC=com
мой /etc/sasl2/smtpd.conf
выглядит следующим образом:
pwcheck_method: saslauthd
mech_list: plain login
теперь, когда я пытаюсь проверить аутентификацию с помощью следующей команды:
testsaslauthd -u username -p password -f /var/run/saslauthd/mux
Я 0: NO "authentication failed"
и когда я смотрю на журналы, он говорит:
Retrying authentication
do_auth :auth failure: [user:myuser] [service=imap] [realm=] [mech=ldap] [reason=unknown]
что я здесь не хватает? заранее спасибо!!
обновление:
установлен OpenLdap для выполнения поиска со следующей командой:
ldapsearch-x-h ldaps: / / my.протокол LDAP.сервер: port-d8
для работы команды ldapsearch я изменил следующим образом:
tls_reqcert allow
TLS_CACERTDIR /home/myuser/cacertss
LDAPTLS_CACERT /home/myuser/cacertss
он возвращает все записи, но я все еще не могу аутентифицироваться с помощью
имя пользователя testsaslauthd-u-p пароль-f/var/run/saslauthd / mux
что мне нужно сделать здесь, чтобы сделать эту проверку подлинности?
2 ответов
Я прошел через упражнение по настройке SASL setup с OpenLDAP и TLS на RedHat Linux 7.2, и мне удалось получить что-то подобное, работающее нормально.
как я уже упоминал в моем предыдущем посте, убедитесь, что у вас есть установлен.
Я бы сначала попытался заставить все работать без SSL. Только после того, как ваша настройка работает без SSL, перейдите к части SSL.
- вы должны убедиться, что
saslauthd
принимает сертификат CA сертификат, используемый сервером LDAP. В частности,
на/etc/saslauthd.conf
- твой друг - если у вас включен SELinux, убедитесь, что
saslauthd
можно получить доступ к файлам сертификатов. Если вы не уверены, хвост/var/log/audit/audit.log
file и искать записи с ключевым словом "denied". Я нашелaudit2allow
инструмент отличный способ включить доступ, который ранее был запрещен. Вы также можете просто отключить SELinux временно, используяsetenforce Permissive
команда
после 5 дней борьбы выяснилось, что настройки, которые я использовал, были для Active directory
где я должен использовать параметры LDAP
следующим образом:
ldap_servers: ldaps://test.ldap.server:1234
ldap_search_base: Ou=PeopleAuthSrch,DC=abc,DC=com
ldap_filters: (uid=%u)
ldap_tls_cacert_file: /path/to/my/certificate
Я установить cyrus-sasl-md5
как упоминал Бертольд Коликс, я не уверен, что это сыграло роль в аутентификации пользователя.