wiki:Servicos/Ldap/Tls

Open LDAP com TLS

apt-get install slapd ldap-utils openssl ssl-cert libsasl2-modules db4.2-util

slappasswd -s SENHA -h {MD5}

slapadd -v -q -b "dc=ldap1,dc=govpr,dc=br" -l ldap-backup-sesp-2a.ldif

vi /usr/lib/ssl/misc/CA.sh
Modificar linha: $CA -policy policy_anything -days 1460 -out newcert.pem -infiles newreq.pem

/usr/lib/ssl/misc/CA.sh -newca -> Gera o certificado da Autoridade Certificadora. (Não esqueça a senha)
Responder as perguntas.
Cuidado com o Common Name, deve ser o mesmo da saida hostname -f (arquivo hosts)

openssl req -new -nodes -keyout newreq.pem -out newreq.pem -> Gera a Chave para o servidor.
Responda as perguntas.
As senhas devem ser deixadas em branco.

/usr/lib/ssl/misc/CA.sh -sign -> Assine o certificado do servidor e a chave privada.
A senha da Autoridade Certificadora será pedida.
Reponda as perguntas.

CONFIGURAÇÃO DO OPENLDAP:
Copie os arquivos gerados para um diretório chamado /etc/ldap/tls/

ldap:/etc/ldap/tls# cp ../certificados/demoCA/cacert.pem ./

ldap:/etc/ldap/tls# cp ../certificados/newcert.pem ./cert.pem

ldap:/etc/ldap/tls# cp ../certificados/newreq.pem ./key.pem

Adiciona as linhas abaixo no arquivo slapd.conf antes da linha "database        bdb"
#######################################################################
# CERTIFICADO
TLSCACertificateFile    /etc/ldap/tls/cacert.pem
TLSCertificateFile      /etc/ldap/tls/cert.pem
TLSCertificateKeyFile   /etc/ldap/tls/key.pem

Edite o aquivo /etc/default/slapd e adicione ou modifique a seguinte linha:
SLAPD_SERVICES="ldap:/// ldaps:///"

Edite o arquivo /etc/ldap/ldap.conf e adicione a seguinte linha:
TLS_REQCERT     allow

Reinicie o serviço:
/etc/init.d/slapd restart

Verifique se a porta 636 (ldapssl) esta aberta:
nmap localhost

e teste a conexão com o ldapssl:
ldapsearch -C -x -H ldaps://ldap.eparana.parana "(uid=sesp-jakjr)" cn -b "dc=pr,dc=gov,dc=br"