Я пытаюсь использовать докер для создания сервера openldap, к которому я могу подключиться через нашу интрасеть. Я настроил его для работы в качестве хоста, чтобы он не вызывал никаких сетевых проблем, и мы могли использовать сетевой DNS. Я использую это изображение https://github.com/osixia/docker-openldap
Вот код, который я использую для запуска контейнера;
docker run --net=host --name arq --hostname <fqdn of host server> --env LDAP_ORGANISATION="arq" --env LDAP_DOMAIN="<fqdn of host server>" --env LDAP_ADMIN_PASSWORD="<testpw>" --volume /docker/ldap3/ldap:/var/lib/ldap --volume /docker/ldap3/slapd:/etc/ldap/slapd.d --detach osixia/openldap
Я подчеркиваю, что это отлично работает через порт 389 для незашифрованной связи. Nmap с другой машины показывает порты для 389 и 636 как открытые для tcp.
Я знаю, что используемый сертификат будет самоподписанным, поэтому я попытался учесть это в запросе. Я пытался подключиться, используя;
LDAPTLS_REQCERT=never ldapsearch -d2 -H ldaps://<fqdn of host server> -x -D "uid=james,<fqdn of host server>" -W
Я получаю неудачу;
TLS: невозможно подключиться: подключение TLS было неправильно разорвано .. ldap_sasl_bind (SIMPLE): не удается связаться с сервером LDAP (-1)
Независимо от того, устанавливаю ли я LDAPTLS_REQCERT
Команда;
openssl s_client -connect orthanctest.sth.nhs.uk:636 -showcerts
возвращается
CONNECTED(00000003)
depth=1 C = US, O = A1A Car Wash, OU = Information Technology Dep., L = Albuquerque, ST = New Mexico, CN = docker-light-baseimage
verify error:num=19:self signed certificate in certificate chain
verify return:0
140309985457808:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:177:
Есть идеи, как заставить это работать, или это просто невозможно?