Seguem aqui os passos para adicionar um pouco de segurança ao sistema LDAP. No meu caso, eu utilizo um certificado auto-assinado. Não é a maneira mais segura, mas ajuda muito quando voce tem que autenticar os usuários e quer evitar que a senha seja lida caso algum sniffer esteja ativo.
Lembre-se de manter a parte privativa do certificado o mais seguro possível, pois é isto que garantirá a segurança e a privacidade das informações. O sistema usado como exemplo é um Red Hat AS 4 Update 6 e os comandos devem ser executados pelo usuário root.
Criação da autoridade certificadora e geração do scertificado:
cd /usr/share/ssl
rm -fr demoCA
/usr/share/ssl/misc/CA -newca
openssl req -newkey rsa:1024 -nodes -keyout newreq.pem -out newreq.pem /usr/share/ssl/misc/CA -sign
Com isto, voce já tem os certificados privados e público. Vamos agora colocar os arquivos certos nos lugares certos.
cp demoCA/cacert.pem /etc/openldap/cacerts/cacert.pem
cp newcert.pem /etc/openldap/cacerts/servercrt.pem
cp newreq.pem /etc/openldap/cacerts/serverkey.pem
Corrigindo as permissões e proprietários
chmod 0400 /etc/openldap/cacerts/serverkey.pem
chown -R ldap:ldap /etc/openldap/cacerts /etc/init.d/ldap restart
Copiando os certificados na máquina cliente ldap
scp /etc/openldap/cacerts/cacert.pem root@<ip_client>:/etc/openldap/cacerts/.
Com estes passos feitos, basta acertar as configurações dos arquivos abaixo nas máquinas LDAP Client:
# arquivo: /etc/ldap.conf
host <fqdn_ldap_server>
base ou=Users,dc=com
uri ldaps://<fqdn_ldap_server>/
ldap_version 3
port 636
timelimit 120
bind_timelimit 120
idle_timelimit 3600
pam_password md5
pam_password exop
ssl on
tls_checkpeer yes
tls_cacertfile /etc/openldap/cacerts/cacert.pem
tls_cacertdir /etc/openldap/cacerts
tls_reqcert never
tls_ciphers TLSv1
pam_password md5
# arquivo: /etc/openldap/ldap.conf
URI ldaps://<fqdn_ldap_server>:636
HOST <fqdn_ldap_server>
BASE ou=Users,dc=com
TLS_CACERTDIR /etc/openldap/cacerts
TLS_REQCERT never