OpenLDAP: ошибка при подключении к Active Directory - PullRequest
1 голос
/ 30 апреля 2020

У меня проблема с корректной работой моего OpenLDAP.

Я хочу зашифровать как соединение из моего Приложения с мета-каталогом OpenLDAP, так и соединения из OpenLDAP с действующими активными каталогами.

Соединение между моим Приложением и OpenLDAP работает нормально.

Но когда назначенный пользователь для подключения к AD пытается выполнить поиск в AD, он получает сообщение об ошибке:

TLS certificate verification: Error, unable to get local issuer certificate
TLS: can't connect: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed (unable to get local issuer certificate).

Вот мой файл slapd.conf:

# MDB Backend configuration file
# See slapd.conf(5) for details on configuration options.
# This file should NOT be world readable.
ucdata-path ./ucdata
include     ./schema/core.schema
include     ./schema/cosine.schema
include     ./schema/nis.schema
include     ./schema/inetorgperson.schema
#include        ./schema/openldap.schema
#include        ./schema/dyngroup.schema


pidfile     ./run/slapd.pid
argsfile    ./run/slapd.args

loglevel 32768 16384 8192 4096 2048 1024 512 256 128 64 32 16 8 4 2 1
#loglevel 256

sizelimit unlimited
timelimit unlimited


# Enable TLS if port is defined for ldaps
#TLSCipherSuite HIGH:MEDIUM:-SSLv2:+SSLv3:RSA
TLSCipherSuite ALL
TLSCertificateFile C:/cert.crt
TLSCertificateKeyFile C:/certKey.pem
TLSCACertificateFile C:/certCA.cer
TLSVerifyClient try



#######################################################################
# mdb database definitions
#######################################################################


database meta
suffix "dc=example,dc=com"
rootdn      "cn=ldap-openLDAP,ou=Users,ou=example,dc=example,dc=com"
# Cleartext passwords, especially for the rootdn, should
# be avoid.  See slappasswd(8) and slapd.conf(5) for details.
# Use of strong authentication encouraged.
#rootpw    {SHA256}276396e1b1727dbb27f226ad31ed186c8baaf2ddfc3fc7c4120c5ff15524533b
rootpw  ]8+yI7t$#>tg23ET0V:Zry)m.p/@Cl]K^MFIw.0*

uri     "ldaps://firstAD.example.com:636/DC=example,DC=com"
idassert-bind bindmethod=simple binddn=CN=ldap-openLDAP,OU=Services,OU=example,DC=example,DC=com credentials=abcd mode=self
idassert-authzFrom "dn.regex:.*"

uri     "ldaps://secondAD.example2.com:636/DC=example2,DC=com"
idassert-bind bindmethod=simple binddn=CN=ldap_user,OU=LDAP,OU=Service_User,DC=example2,DC=com credentials=abcd mode=self
idassert-authzFrom "dn.regex:.*"

Когда я использую ldap и порт 389 вместо ldaps и порт 636, он работает нормально.

Любая идея, как заставить это работать, что два пользователя, которые должны проходить аутентификацию на серверах AD, могут сделать это через ldaps?

Важная информация: OpenLDAP установлен на Windows сервере.

...