Table of Contents
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.
