Visão geral #
RELIANOID é capaz de gerenciar conexões HTTPS (Perfil HTTP), portanto o administrador do sistema deve criar seus próprios certificados (certificados autoassinados) ou adquirir Certificados Assinados por uma Autoridade Certificadora, em ambos os casos o certificado deve ser construído no formato PEM.
O Certificado Seguro deve ser criado sem senha e as chaves e o CSR devem ser gerados no servidor a ser protegido.
Positivos O SSL está pronto para entrar no formato PEM, mas o Rapid SSL precisa ser convertido, pois cada arquivo contém o certificado, a CA intermediária e a CA raiz separada.
Requisitos #
O pacote openssl deverá ser instalado para gerar as chaves no servidor, no nosso caso será o RELIANOID instância que já deve estar instalada.
Primeiro, gere a chave sem passphrase.
root@noid-ee-01:~# openssl genrsa -out host_domain_com.key 2048
Em seguida, gere a solicitação assinada de certificado (.csr) usando a chave gerada (.key) como entrada.
root@noid-ee-01:~# openssl req -new -key host_domain_com.key -out host_domain_com.csr
Depois que o certificado e os arquivos intermediários da autoridade de certificação forem entregues, garanta a obtenção do certificado raiz do emissor.
Todos os arquivos separados precisam estar no formato PEM: certificado do servidor, certificado intermediário e certificado de CA raiz. Se não for, converta o arquivo com o seguinte comando:
root@noid-ee-01:~# openssl x509 -in certFileName.csr -outform PEM -out convertCertFileName.pem
Finalmente, temos a chave privada, o certificado emitido, o certificado intermediário e o certificado de CA raiz. Todo esse conteúdo de arquivo deve ser combinado para criar o arquivo PEM no formato UNIX.
Gere certificado SSL em formato PEM #
Para gerar um certificado SSL no formato PEM, normalmente você precisa de um chave privada certificado, um certificado CA intermediário (se existir) e um certificado CA raiz. Veja como você pode gerar o arquivo PEM:
Preparar os Componentes #
chave privada: certifique-se de ter a chave privada correspondente ao certificado.
Certificado: obtenha o certificado emitido para seu domínio ou servidor.
Certificado CA intermediário: se o seu certificado for emitido por uma CA intermediária (não diretamente pela CA raiz), você precisará do certificado da CA intermediária.
Certificado CA raiz: você também pode precisar do certificado CA raiz, especialmente se ele ainda não estiver incluído no armazenamento confiável dos aplicativos ou dispositivos cliente.
Concatenar os componentes #
Abra um editor de texto ou use ferramentas de linha de comando para concatenar a chave privada, o certificado, o certificado CA intermediário (se aplicável) e o certificado CA raiz (se necessário) em um único arquivo PEM, conforme mostrado abaixo.
-----BEGIN RSA PRIVATE KEY----- Chave privada (sem senha) -----END RSA PRIVATE KEY----- -----BEGIN CERTIFICATE----- Certificado (CN= www.meudominio.com) ----- FINALIZAR CERTIFICADO----- -----INICIAR CERTIFICADO----- Intermediário (CA intermediária, se existir) ----- FINALIZAR CERTIFICADO----- -----BEGIN CERTIFICATE----- Root (ROOT CA, que assina o Certificado) -----END CERTIFICATE-----
Consulte o exemplo abaixo para saber como será a aparência de um arquivo PEM correto.
-----BEGIN RSA PRIVATE KEY----- uiMTxBQnK9ApC5eq1mrBooECgYB4925pDrTWTbjU8bhb/7BXsjBiesBBVO43pDYL nUVxhqt4DT+4Vp5S7D9FQ+HagbhVInQXKXtT7FNFhpIxpRy512ElSuWvrELiZOwe -----END RSA PRIVATE KEY----- -----BEGIN CERTIFICATE----- wYDVR0fBDwwOjA4oDagNIYyaHR0cDovL3JhcGlkc3NsLWNybC5n DYmhNE0IgXx6XRHiMAwGA1UdEwEB/wQCMAAwSQYIKwYBBQUHAQEEPTA7MDkGCCsG gOYD8kmKOsxLRWeZo6Tn8 -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- EgYDVR0TAQH/BAgwBgEB/wIBADA6BgNVHR8EMzAxMC+gLaArhilodHRwOi8vY3Js JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmdlb3RydXN0LmNvbTANBgkqhkiG9w0B -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJV 7qj/WsjTVbJmcVfewCHrPSqnI0kBBIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh 1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee9570+sB3c4 -----END CERTIFICATE-----
É obrigatório converter todo o arquivo PEM no formato UNIX. Está disponível um certificado chamado zencert.pem or noidcert.pem para fins de teste para ser usado com farms de perfis HTTPS.
Certifique-se de que a ordem dos certificados seja a seguinte:
1. Seu certificado
2. Certificado CA intermediário (se aplicável)
3. Certificado CA raiz
Salvar arquivo PEM concatenado #
Salve o arquivo PEM concatenado com uma extensão .pem. Este arquivo conterá a chave privada e toda a cadeia de certificados.
Use o arquivo PEM #
Agora você pode usar o arquivo PEM na configuração do servidor. Dependendo do software do seu servidor (por exemplo, Apache, Nginx, RELIANOID), talvez seja necessário especificar o caminho para o arquivo PEM na configuração SSL. No RELIANOID, basta fazer upload do certificado SSL usando a GUI da web e atribuir como Certificado Habilitado em qualquer farm HTTPS.
Verificar configuração #
Depois de configurar seu servidor para usar o arquivo PEM, é essencial verificar a configuração SSL/TLS para garantir que a cadeia de certificados seja apresentada corretamente aos clientes durante o handshake SSL. Você pode usar várias ferramentas de teste SSL/TLS online ou utilitários de linha de comando como OpenSSL para verificar a configuração e garantir que a cadeia de certificados esteja completa.
Gere um certificado SSL autoassinado no formato PEM #
Para criar um certificado SSL autoassinado no formato PEM do balanceador de carga ou do servidor, execute as seguintes etapas:
1. Gere os arquivos de chave e certificado com uma chave RSA de 4096 bits por 1 ano e sem senha usando o seguinte comando:
root@noid-ee-01:~# openssl req -nodes -new -x509 -newkey rsa:4096 -keyout server.key -out server.cert -days 365 Gerando uma chave privada RSA ....................++++ .................... .................................................. .................................................. ...................................++++ escrevendo nova chave privada em 'server.key' - ---- Você será solicitado a inserir informações que serão incorporadas à sua solicitação de certificado. O que você está prestes a inserir é o que é chamado de Nome Distinto ou DN. Existem alguns campos, mas você pode deixar alguns em branco. Para alguns campos haverá um valor padrão. Se você inserir '.', o campo será deixado em branco. ----- Nome do país (código de 2 letras) [AU]: Nome do estado ou província (nome completo) [Algum estado]: Nome da localidade (por exemplo, cidade) []: Nome da organização (por exemplo, empresa) [Internet Widgits Pty Ltd]: Nome da unidade organizacional (por exemplo, seção) []: Nome comum (por exemplo, FQDN do servidor ou SEU nome) []: Endereço de e-mail []:
Durante a execução deste comando, você será solicitado a inserir informações de forma interativa. Forneça os detalhes necessários.
2. Concatene a chave e o certificado em um arquivo PEM usando o seguinte comando:
root@noid-ee-01:~# cat servidor.key servidor.cert >> servidor.pem
Este comando combina a chave e o certificado em um único arquivo PEM.
3. Seu certificado SSL autoassinado no formato PEM (servidor.pem) agora está pronto para uso com seu proxy, serviços da Web ou serviços de Internet.
Como ver o conteúdo de um certificado SSL #
Para visualizar o conteúdo de um certificado SSL, você pode usar várias ferramentas e comandos. Um método comum é usar OpenSSL, uma ferramenta versátil de linha de comando que oferece suporte a diversas operações criptográficas, incluindo inspeção de certificados. Veja como você pode visualizar o conteúdo de um certificado SSL usando OpenSSL:
Comando OpenSSL para obter os detalhes do certificado #
Abra um terminal ou janela de prompt de comando em seu sistema.
Use o seguinte comando OpenSSL para visualizar o conteúdo do certificado SSL:
root@noid-ee-01:~# openssl x509 -in certificado.pem -text -noout
Substituir certificado.pem com o caminho para o seu arquivo de certificado SSL.
Se o seu certificado estiver no formato PEM, este comando exibirá informações detalhadas sobre o certificado, incluindo:
Emissora
Assunto
Período de validade (datas de início e término)
Informações de chave pública
Extensões de certificado
Algoritmo de assinatura
Impressões digitais (SHA-1, SHA-256, etc.)
Depois de executar o comando, o OpenSSL produzirá a representação textual do conteúdo do certificado. Revise as informações exibidas para verificar os detalhes do certificado, como emissor, assunto, datas de validade e outros metadados relevantes.
Inspecionar certificados DER #
Se o seu certificado estiver no formato DER em vez de PEM, você poderá usar a opção -inform der para especificar o formato de entrada:
root@noid-ee-01:~# openssl x509 -inform der -in certificado.pem -text -noout
Você também pode salvar a saída em um arquivo para análise ou documentação adicional usando o redirecionamento de shell (>):
root@noid-ee-01:~# openssl x509 -in certificado.pem -text -noout > certificado_detalhes.txt
Este comando salvará os detalhes do certificado em um arquivo chamado Certificate_details.txt.
Ao usar a ferramenta de linha de comando OpenSSL, você pode inspecionar facilmente o conteúdo de um certificado SSL e verificar seus detalhes, ajudando a garantir a segurança e a validade de suas conexões SSL/TLS.
Verificando se a CA intermediária e raiz está presente em um certificado SSL #
Verificar se os certificados CA intermediários e raiz estão presentes em um certificado SSL envolve examinar a cadeia de certificados. Veja como você pode fazer isso:
Use OpenSSL ou outra ferramenta para visualizar os detalhes do certificado SSL. Execute o seguinte comando:
root@noid-ee-01:~# openssl crl2pkcs7 -nocrl -certfile certificado.pem | openssl pkcs7 -print_certs -noout subject=CN = mydomain.com emissor=C = EUA, O = "DigiCert, Inc.", CN = RapidSSL Global TLS RSA4096 SHA256 2022 CA1
No exemplo acima, apenas o certificado está presente.
root@noid-ee-01:~# openssl crl2pkcs7 -nocrl -certfile certificado.pem | openssl pkcs7 -print_certs -noout subject=CN = meudomínio.com emissor=C = EUA, O = "DigiCert, Inc.", CN = RapidSSL Global TLS RSA4096 SHA256 2022 CA1 subject=C = EUA, O = "DigiCert, Inc.", CN = RapidSSL Global TLS RSA4096 SHA256 2022 CA1 emissor = C = EUA, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Global Root CA
No exemplo acima, tanto o certificado quanto o Intermediário estão presentes.
Substitua Certificate.pem pelo caminho do seu arquivo de certificado SSL.
Além disso, use OpenSSL para visualizar a cadeia de certificados apresentada pelo servidor SSL durante o handshake. Execute o seguinte comando:
root@noid-ee-01:~# openssl s_client -connect meudomínio.com:443 -showcerts
Substitua mydomain.com pelo nome de domínio do servidor habilitado para SSL ao qual você deseja se conectar.
Procure as seções denominadas Cadeia de certificados ou Cadeia de certificados (PEER). Isto mostrará os certificados apresentados pelo servidor, começando pelo certificado da entidade final e terminando com o certificado CA raiz.
Verifique os certificados de CA raiz e intermediário examinando cada certificado na cadeia para verificar se os certificados de CA raiz e intermediário estão presentes.
Certificado CA intermediário: procure um certificado na cadeia que corresponda ao emissor do certificado da entidade final, mas o preceda.
Certificado CA raiz: verifique se o último certificado da cadeia é o certificado CA raiz.
Como alternativa, você pode usar ferramentas de validação SSL on-line que verificam automaticamente a cadeia de certificados e verificam se os certificados de CA intermediários e raiz estão presentes. Ferramentas como o SSL Server Test da SSL Labs ou a ferramenta de diagnóstico de instalação SSL da DigiCert podem fornecer informações detalhadas sobre a cadeia de certificados.
Seguindo essas etapas, você pode verificar se os certificados CA intermediários e raiz estão presentes em um certificado SSL e garantir a integridade e a segurança de suas conexões SSL/TLS.