У меня проблема с проксированием openldap через haproxy. Аутентификация отлично работает в CentOS (7.5.1804) и Debian (9.4). Единственная проблема в том, что я получаю ошибки в syslog и authlog:
CentOS:
nslcd[10082]: [9f6e5f] ldap_result() failed: Can't contact LDAP server
Debian:
nscd: nss_ldap: reconnected to LDAP server ldap://haproxy.exemple.com after 1 attempt
Вся проблема исчезает, когда я меняю конечную точку LDAP напрямую на любой сервер ldap из конфигурации ниже:
global log 127.0.0.1 local3 pidfile /var/run/haproxy.pid chroot /var/lib/haproxy maxconn 8192 user haproxy group haproxy daemon stats socket /var/lib/haproxy/stats tune.ssl.default-dh-param 2048frontend ldap_service_front mode tcp bind 10.0.0.2:389 описание Параметр службы LDAP параметр socket-stats параметр tcpka timeout client 10s default_backend ldap_service_back
backend ldap_service_back server ldap01 10.0.0.3:389 проверка падения 3 рост 5 inter 5000 вес 10 сервер ldap02 10.0.0.4:389 проверка падения 3 рост 5 inter 5000 вес 10 сервер ldap03 10.0.0.5:389 проверка падения 3 рост 5 inter 5000 вес 10 server ldap04 10.0.0.6:389 проверить падение 3 подъем 5 интер 5000 вес 10
режим баланс tcp наименьшее соединение тип таблицы stick-table размер IP 200k истекает 30 мин тайм-аут сервер 12 сек таймаут соединение 10 сек опция tcpka option tcp-check tcp-check порт подключения 389 tcp-check send-binary 300c0201 tcp-check send-binary 01 tcp-check send- двоичный 6007 tcp-check send-binary 0201 tcp-check send-binary 03 tcp-check send-binary 04008000 tcp-check ожидает двоичный 0a0100 tcp-check send-binary 30050201034200
frontend ldaps_service_front mode tcp bind 10.0.0.2:636 ssl crt /etc/haproxy/ssl/chain.pem no-sslv3 no-tlsv10 description LDAPS Service option socket-stats option tcpka timeout client 10s default_backend ldaps_service_back
backend ldaps_service_back server ldap01 10.0.0.3:636 check ssl verify none fall 3 rise 5 inter 5000 weight 10 server ldap02 10.0.0.4:636 check ssl verify none fall 3 up 5 inter 5000 weight 10 server ldap03 10.0.0.5:636 проверка ssl verify нет падения 3 подъем 5 интер 5000 вес 10 сервер ldap04 10.0.0.6:636 проверка ssl проверить нет падения 3 подъем 5 интер 5000 вес 10
режим баланс tcp тайм-аут минимального соединения сервер 12 сек таймаут соединение 10 сек опция опция tcpka tcp-check tcp-check порт подключения 636 ssl tcp-check send-binary 300c0201 tcp-check send-binary 01 tcp-check send-binary 6007 tcp-check send-binary 0201 tcp-check send-binary 03 tcp-check send-binary 04008000 tcp-check expect двоичный 0a0100 tcp-check send-binary 30050201034200
idle_timelimit
in nslcd.conf
, but it didn't help at all.haproxy: HA-Proxy version 1.8.12-1~bpo9+1 openldap: slapd 2.4.44 nslcd: nss-pam-ldapd 0.8.13
frontend ldap_service_front
timeout client 10s
скорее всего вызывает отключение на холостом ходу.
Если вы установите nslcd idle_timelimit
меньше, чем timeout client
для haproxy вы не должны получать эти сообщения.