====== Configuração de Certificados SSL/TLS para OpenLDAP usando certutil ====== ===== Introdução ===== Esta documentação fornece um guia detalhado sobre como configurar certificados SSL/TLS para um servidor OpenLDAP utilizando a ferramenta `certutil`, que faz parte do Network Security Services (NSS). Antes de prosseguir com os procedimentos técnicos, é importante entender o que são certificados SSL/TLS e sua importância. **O que são Certificados SSL/TLS?** SSL (Secure Sockets Layer) e TLS (Transport Layer Security) são protocolos fundamentais para a segurança na internet, proporcionando comunicações seguras ao criptografar a transferência de dados entre sistemas. Os certificados SSL/TLS atuam como identificações digitais que autenticam a identidade de um site ou servidor e criptografam a conexão entre o servidor e o cliente. **Por que são importantes?** * **Autenticação**: Os certificados asseguram que a comunicação é feita com o servidor correto e não com um impostor. * **Criptografia**: Protegem a privacidade e segurança da informação transmitida entre o servidor e o cliente, prevenindo que dados sensíveis sejam interceptados. * **Integridade de Dados**: Asseguram que os dados não sejam alterados ou corrompidos durante a transmissão. **Visão Geral do certutil:** * **certutil** é uma ferramenta de linha de comando usada para gerenciar certificados, chaves e outros dados relacionados à segurança em repositórios de certificados NSS. * Possui funcionalidades para criar, listar, modificar e deletar certificados, além de gerenciar e manipular chaves privadas e públicas. * É essencial para configurar ambientes seguros, como servidores que necessitam de autenticação e criptografia de comunicações. Agora que você entende a importância dos certificados SSL/TLS e como eles funcionam, vamos detalhar como você pode usar `certutil` para configurar esses certificados em um servidor OpenLDAP, começando com a preparação inicial e seguindo até a implementação e verificação final. ===== Preparação Inicial ===== Antes de começar, certifique-se de que todas as ferramentas necessárias estão instaladas. Isso inclui o `certutil`, parte do pacote `nss-tools` em muitas distribuições Linux. * Debian/Ubuntu: sudo apt-get install libnss3-tools * RedHat/CentOS: sudo yum install nss-tools A seguir, crie um diretório onde os certificados e chaves serão armazenados: mkdir /etc/openldap/certs chmod 700 /etc/openldap/certs ===== Criação de Banco de Dados de Certificados ===== Inicialize um banco de dados de certificados NSS no diretório criado: certutil -N -d /etc/openldap/certs Você será solicitado a criar uma senha para o banco de dados de certificados. Escolha uma senha segura e guarde-a, pois será necessária para acessar o banco de dados posteriormente. ===== Criação e Gerenciamento de Chaves e Certificados ===== === Chave Privada e Certificado da CA === certutil -G -d /etc/openldap/certs -z /dev/urandom -f /etc/openldap/certs/password -n "CA key" -g 4096 -t "CTu,CTu,CTu" certutil -S -d /etc/openldap/certs -n "LDAP CA" -s "CN=LDAP CA,O=YourOrg,C=US" -x -t "CT,C,C" -m 1000 -v 120 -k rsa -g 4096 -z /dev/urandom -f /etc/openldap/certs/password === Chave Privada e CSR para o Servidor OpenLDAP === certutil -G -d /etc/openldap/certs -z /dev/urandom -f /etc/openldap/certs/password -n "Server key" -g 4096 -t "u,u,u" certutil -R -d /etc/openldap/certs -a -o server.csr -n "Server key" -s "CN=yourserver.yourdomain.com,O=YourOrg,C=US" -v 12 -k rsa -g 4096 -z /dev/urandom -f /etc/openldap/certs/password === Assinatura do CSR com a CA === certutil -C -d /etc/openldap/certs -c "LDAP CA" -a -i server.csr -o server.crt -m 1001 -v 12 -f /etc/openldap/certs/password ===== Configuração do OpenLDAP ===== Configure o OpenLDAP para usar os certificados e a chave gerados, adicionando as seguintes linhas ao arquivo slapd.conf: TLSCACertificateFile /etc/openldap/certs/ca.crt TLSCertificateFile /etc/openldap/certs/server.crt TLSCertificateKeyFile /etc/openldap/certs/server.key ===== Verificação e Listagem dos Certificados ===== Liste todos os certificados e verifique os detalhes específicos de cada um: certutil -L -d /etc/openldap/certs certutil -L -d /etc/openldap/certs -n "LDAP CA" certutil -V -u V -d /etc/openldap/certs -n "Nome do Certificado" ===== Testes e Manutenção ===== Teste a configuração realizando uma conexão segura: ldapsearch -ZZ -x -LLL Assegure-se de que os arquivos de chave e certificado estão seguros, ajustando as permissões de arquivo apropriadamente e realizando backups regulares. ===== Conclusão ===== Esta documentação cobre todos os aspectos necessários para configurar e verificar certificados SSL/TLS para um servidor OpenLDAP usando **certutil**. Certifique-se de manter as práticas de segurança ao manusear chaves privadas e informações sensíveis.