Provavelmente, uma maneira melhor é usar o FreeIPA.
Tenho 389 Directory Server em execução no RHEL 5 com grupos, usuários, posix etc. Os clientes RHEL estão autenticando usuários com LDAP - sem problemas, tudo funciona perfeitamente, mas as senhas são enviadas em texto sem formatação e ficam visíveis com o sniffer de rede. Então, decidimos rodar com SSL:
Não funciona.
Como? Qual é a melhor maneira de integrar com segurança?
A primeira coisa que você pode querer fazer é verificar se seu servidor está apresentando seus certificados corretamente. Você pode fazer isso tentando se conectar ao seu servidor usando o OpenSSL. Em uma máquina cliente com acesso, execute:
openssl s_client –connect target_server_fqdn:636
Isso deve retornar uma boa impressão do certificado do servidor. A chave aqui é verificar o "Verificar código de retorno" impresso no final. Você pode obter códigos diferentes, mas, em geral, você deve obter 0 para um certificado válido e, possivelmente, 19 se for autoassinado.
Se isso falhar, volte e verifique se você importou os certificados do servidor corretamente.
Se você passou neste teste, passe a testar suas conexões TLS no lado do cliente.
Em uma máquina cliente, execute
ldapsearch -z -ZZ '(uid=<testusername>)'
Isso forçará uma pesquisa LDAP em uma conexão criptografada. Se isso for bem-sucedido, você deverá recuperar algumas informações do usuário e uma verificação nos registros do DS deverá resultar em:
[23/Sep/2011:07:48:57 -0500] conn=1631 op=0 EXT oid="X.X.X.X.XX.X.XX" name="startTLS" [23/Sep/2011:07:48:57 -0500] conn=1631 op=0 RESULT err=0 tag=120 nentries=0 etime=0 [23/Sep/2011:07:48:57 -0500] conn=1631 SSL 256-bit AES
Se isso falhar, você deverá garantir que os certificados foram importados corretamente no lado do cliente.
Na solução de problemas, algumas áreas comuns que eu encontrei procurando com frequência são:
1.) Nos clientes, em alguns casos (que alguém aqui pode ser capaz de explicar melhor), você pode tentar exigir assinatura editando ldap.conf e incluindo a linha
TLS_REQCERT allow
2.) Se a GUI de autenticação estiver causando problemas, você pode tentar ativar explicitamente o TLS para LDAP com
authconfig --enableldaptls --update
Eu tive problemas com a GUI antes, então tenho a tendência de usar comandos da CLI.
3.) E uma última coisa que você pode tentar (novamente, apenas para testes), está chamando
cacertdir_rehash <dir where certs are stored>
Se você estiver procurando mais ajuda para criar certificados de auto-assinatura, tente o seguinte:
1.) Crie seu próprio certificado de CA autoassinado:
certutil -S -n "<CA Certificate Name Here>" -s "cn=<CN Name Here>, dc=<Your DC's FQDN>" -2 -x -t "CT,," -m 1000 -v 120 -d . -k rsa
2.) Crie um certificado de servidor para o servidor de diretório
certutil -S -n "Cert-Name" -s "cn=<Server FQDN>" -c "<Name of CA Certificate>" -t "u,u,u" -m 1001 -v 120 -d . -k rsa
3.) Importe esses dois certificados para o servidor de diretório na seção "Gerenciar Certificados", selecionada em "Tarefas"
4.) Ativar criptografia TLS
5.) Crie um certificado exportável para clientes e imprima-o em um arquivo .pem
certutil -d . -L -n "<CA Certificate Name>" -a > cacert.pem
6.) Por meio de sua escolha - baixar o certificado do cliente para cada cliente.
7.) Rehash os certificados usando o comando mencionado anteriormente
cacertdir_rehash <dir where certs are stored>
Eu não tive sorte configurando o SSL para o diretório 389 ou para os servidores admin após o howto que eu encontrei (eu percebi que era porque eu estava usando o Centos 6, e a maioria dos howtos visava especificamente o Redhat).
O que finalmente funcionou para mim foi iniciar solicitações cert das interfaces do servidor 389-console (admin | dir), assinar esses requisitos com uma instalação tinyCA (apenas um frontend para openssl, eu sou preguiçoso), exportar o PEM assinado certs e CA certs, e importá-los de volta usando o 389-console.
389 console - > Grupo de servidores - > servidor (admin / diretório) - > Aberto - > Gerenciar Certificados
Espero que isso ajude ...
O projeto do 389 Directory Server mantém um guia sobre TLS / SSL aqui link
Isso abrange a administração de certificados do servidor sem o console administrativo. Espero que ajude,
Tags authentication ssl ldap fedora 389-ds