Estou arrancando os cabelos há 3 dias tentando configurar o ldap. Tentei primeiro instalar a partir do código-fonte, mas depois reinstalei usando o apt-get
, o que causou alguns erros de migração, mas acredito que todos foram resolvidos. Consigo executar ldapsearch -x
e seus primos quando especifico corretamente um DN raiz (por algum motivo a base especificada ldap.conf
não está funcionando), o que presumo indica que o servidor está funcionando corretamente; Também verifiquei que o servidor está escutando abaixo. Porém, estou tentando configurar o SSL, e entendo que com a versão que instalei através do apt-get precisa ser configurado no cn=config
, e portanto devo usar as -H ldapi:/// -Y EXTERNAL
opções abaixo, porém não consegue entrar em contato com o servidor quando tento.
root@aeneas:/tmp/ldap# ldapmodify -H ldapi:/// -Y EXTERNAL -D 'cn=config' -f ./modify.ldif
ldap_sasl_interactive_bind_s: Can't contact LDAP server (-1)
root@aeneas:/tmp/ldap# netstat -plane | grep slapd
tcp 0 0 0.0.0.0:389 0.0.0.0:* LISTEN 0 53158 11280/slapd
tcp 0 0 0.0.0.0:636 0.0.0.0:* LISTEN 0 53163 11280/slapd
tcp6 0 0 :::389 :::* LISTEN 0 53159 11280/slapd
tcp6 0 0 :::636 :::* LISTEN 0 53164 11280/slapd
unix 2 [ ACC ] STREAM LISTENING 53160 11280/slapd /var/run/slapd/ldapi
unix 2 [ ] DGRAM 53154 11280/slapd
root@aeneas:/tmp/ldap# cat ./modify.ldif
dn: cn=config
changetype: modify
add: olcTLSCACertificateFile
olcTLSCACertificateFile: /etc/ldap/ssl/cacert.pem
-
add: olcTLSCertificateFile
olcTLSCertificateFile: /etc/ldap/ssl/servercrt.pem
-
add: olcTLSCertificateKeyFile
olcTLSCertificateKeyFile: /etc/lda/pssl/serverkey.pem
Mais tarde, desabilitei ldaps:///
a escuta na porta 636, suspeitando que ldapmodify
estava entrando em contato com o servidor SSL por padrão e depois encerrando quando não recebi um certificado, mas isso não teve efeito.
Responder1
A slapi
conexão LDAP
é baseada na presença de um arquivo pipe no sistema de arquivos para vincular o cliente e o servidor.
É claro que a localização do arquivo pipe depende da instalação.
Se o servidor for compilado, digamos em /usr/local
, o servidor slapd se liga ao pipe em:
/usr/local/lib/run/ldapi
Por outro lado, a ldapsearch
ferramenta stock instalada a partir do apt (exemplo Debian), procura um arquivo pipe em:
/var/run/slapd/ldapi
Eu recomendaria criar um link virtual.
Responder2
Após uma investigação mais aprofundada, restaram alguns executáveis /usr/local/
da instalação original da fonte; removê-los corrigiu o problema de conectividade. O LDIF está causando problemas, mas isso está fora do assunto.