Сбой запроса к серверу Samba AD с помощью ldapsearch с помощью ldap_sasl_bind(SIMPLE): не удается связаться с сервером LDAP (-1)
Я пытаюсь использовать свой существующий (полностью настроенный и работающий) Samba AD DC в качестве аутентификации для XWiki и других приложений.
Поэтому я сначала пытаюсь выполнить успешный ldapsearch с сервера XWiki. Следующая команда работает на сервере Samba, но не на клиенте XWiki:
ubuntu@xwiki:~$ ldapsearch -x -LLL -E pr=200/noprompt -H ldaps://10.0.1.191/ -D "CN=Administrator,CN=Users,DC=ad,DC=nitssolutions,DC=com" -w 'SambaNovi2018' -b 'DC=ad,DC=nitssolutions,DC=com' -s sub '(sAMAccountName=*)' cn mail memberOf
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)
Однако, если я сделаю:
ping 10.0.1.191
Я получил:
ubuntu@xwiki:~$ ping 10.0.1.191
PING 10.0.1.191 (10.0.1.191) 56(84) bytes of data.
64 bytes from 10.0.1.191: icmp_seq=1 ttl=64 time=135 ms
64 bytes from 10.0.1.191: icmp_seq=2 ttl=64 time=138 ms
64 bytes from 10.0.1.191: icmp_seq=3 ttl=64 time=146 ms
^C
--- 10.0.1.191 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2002ms
rtt min/avg/max/mdev = 135.741/140.317/146.970/4.832 ms
и если я сделаю:
telnet 10.0.1.191 636
Я могу подключиться.
РЕДАКТИРОВАТЬ: Дополнительная информация:
Я добавил -d 1
к ldapsearch
командная строка, и теперь я получаю:
ubuntu@xwiki:~$ ldapsearch -d 1 -x -LLL -E pr=200/noprompt -H ldaps://10.0.1.191/ -D "CN=Administrator,CN=Users,DC=ad,DC=nitssolutions,DC=com" -w 'SambaNovi2018' -b 'DC=ad,DC=nitssolutions,DC=com' -s sub '(sAMAccountName=*)' cn mail memberOf
ldap_url_parse_ext(ldaps://10.0.1.191/)
ldap_create
ldap_url_parse_ext(ldaps://10.0.1.191:636/??base)
ldap_sasl_bind
ldap_send_initial_request
ldap_new_connection 1 1 0
ldap_int_open_connection
ldap_connect_to_host: TCP 10.0.1.191:636
ldap_new_socket: 3
ldap_prepare_socket: 3
ldap_connect_to_host: Trying 10.0.1.191:636
ldap_pvt_connect: fd: 3 tm: -1 async: 0
attempting to connect:
connect success
TLS: peer cert untrusted or revoked (0x42)
TLS: can't connect: (unknown error code).
ldap_err2string
ldap_sasl_bind(SIMPLE): Can't contact LDAP server (-1)
Обратите внимание, в частности, на эту строку:
TLS: peer cert untrusted or revoked (0x42)
Я попытаюсь исследовать эту ошибку дальше, но на данный момент я все еще застрял...
EDIT2: еще больше дополнительной информации:
Когда я запускаю эту команду, с -d 1
Параметр на сервере Samba, команда работает, несмотря на наличие:
TLS: peer cert untrusted or revoked (0x42)
в отладочном выводе....
Продолжая копать....
Помогите?
1 ответ
И вот я снова отвечаю на свой вопрос... вздох. Я должен постить здесь чаще. Помогает мне четко изложить проблему, что неизбежно приводит к поиску решения.
Во всяком случае, решение было: у меня был файл, /etc/ldap/ldap.conf
на моей машине sambadc, а также на моей клиентской машине xwiki, но содержимое различалось. Машина Sambadc имела:
#
# LDAP Defaults
#
# See ldap.conf(5) for details
# This file should be world readable but not world writable.
#BASE dc=example,dc=com
#URI ldap://ldap.example.com ldap://ldap-master.example.com:666
#SIZELIMIT 12
#TIMELIMIT 15
#DEREF never
# TLS certificates (needed for GnuTLS)
#TLS_CACERT /etc/ssl/certs/ca-certificates.crt
TLS_REQCERT allow
Который работал.
Но моя машина xwiki имела:
#
# LDAP Defaults
#
# See ldap.conf(5) for details
# This file should be world readable but not world writable.
#BASE dc=example,dc=com
#URI ldap://ldap.example.com ldap://ldap-master.example.com:666
#SIZELIMIT 12
#TIMELIMIT 15
#DEREF never
# TLS certificates (needed for GnuTLS)
TLS_CACERT /etc/ssl/certs/ca-certificates.crt
который не удался.
Когда я закомментировал TLS_CACERT
и добавил TLS_REQCERT
линия, все начало работать как положено.