Назад | Перейти на главную страницу

Периодическая проблема - ошибка ldap_start_tls_s (), ошибка подключения

Мы получаем периодически возникающие ошибки такого рода:

[Mon Mar 20 08:38:37 2017] [info] [client client_ip_here] [27056] auth_ldap authenticate: user first.last@server.com authentication failed; URI /path/to/project/trunk [LDAP: ldap_start_tls_s() failed][Connect error]

В журналах Apache:

197896-[Mon Mar 20 08:38:37 2017] [info] Initial (No.1) HTTPS request received for child 3 (server svn.server.com:443)
197897-[Mon Mar 20 08:38:37 2017] [debug] mod_authnz_ldap.c(432): [client client_ip_here] [27056] auth_ldap authenticate: using URL ldap://ldap.server.com/OU=Accounts,DC=AAA,DC=BBB,DC=CCC?mail
197901:[Mon Mar 20 08:38:37 2017] [info] [client client_ip_here] [27056] auth_ldap authenticate: user first.last@server.com authentication failed; URI /path/to/project/trunk [LDAP: ldap_start_tls_s() failed][Connect error]

Конфигурация Apache:

<Location /svn/>
    DAV svn

    SVNListParentPath on
    SVNParentPath /path/to/repositories
    SVNIndexXSLT "/svnindex.xsl"

    # SetEnv SVN_LOCALE_CHARSET "en_US.UTF-8"
    SetEnv SVN_LOCALE_CHARSET "UTF-8"

    AuthBasicProvider ldap file
    AuthUserFile /path/to/svnfile.acl
    AuthType Basic
    AuthzLDAPAuthoritative off
    AuthName "Login with full email (lowercase) and password / Utiliser votre courriel (minuscules) et mot de passe pour vous authentifier"
    AuthLDAPBindDN "bind_dn_here"
    AuthLDAPBindPassword "password_here"
    AuthLDAPURL "ldap://ldap.server.com/OU=Accounts,DC=AAA,DC=BBB,DC=CCC?mail" TLS
    AuthzSVNAccessFile /path/to/svnrepos.acl

    require valid-user
</Location>

Файл конфигурации LDAP:

RERERRALS off
TLS_CACERTDIR   /etc/openldap/certs
TLS_REQCERT never

Раньше это было твердо до прошлой недели, когда нам пришлось изменить DC. Решение, пока решение не будет найдено, - перезапускать Apache каждые полчаса (или когда аутентификация начинает терпеть неудачу).

Судя по всему, новый DC настроен так же, как и другой. Не знаю, как это исправить. Я не управляю всеми частями этого уравнения.

Вы можете попробовать запустить ldapsearch, который имитирует то, что делает Apache, когда вы заметите проблему. Если ваша проблема закрывает всех пользователей, не имеет значения, к кому вы привязываетесь. Вы также можете захотеть, чтобы подробный переключатель видел, есть ли у вас какие-либо подсказки, почему starttls не работает.

Другой инструмент, который вы можете попробовать, - openssl s_client, который может дать вам больше информации о разговоре starttls и помочь вам сузить причину.

Заглянул в журналы вашего нового DC?