Como verificar um certificado com comandos OpenSSL no Linux?

Se você gerencia um site ou servidor, garantir que o seu certificado SSL seja válido e esteja configurado corretamente é uma prioridade máxima. Uma maneira de fazer isso é com o OpenSSL, um popular utilitário criptográfico de código aberto.

Você pode usar o OpenSSL para verificar a data de validade, o emissor e o assunto do certificado. Neste artigo, mostraremos como verificar um certificado com comandos OpenSSL no Linux. Se você for um desenvolvedor da Web, administrador de sistemas ou apenas um curioso sobre SSL, este guia fornecerá as etapas exatas e as linhas de comando para verificar certificados com o OpenSSL.


Índice

  1. Como verificar a versão do OpenSSL?
  2. Como visualizar os detalhes completos do certificado
  3. Exibir o próprio certificado SSL (codificado)
  4. Verificar se a chave corresponde ao certificado
  5. Verifique quem emitiu o certificado SSL
  6. Verificar para quem o certificado SSL foi emitido
  7. Verificar a validade do certificado SSL no Linux
  8. Exibir todas as informações acima sobre o certificado SSL

Como verificar a versão do OpenSSL?

A maioria dos sistemas Linux terá o OpenSSL pré-instalado, mas é melhor garantir que você tenha a versão mais recente em execução. Você pode verificar sua versão do OpenSSL executando o seguinte comando:

versão do openssl -a

Verifique a versão do OpenSSL

Os arquivos de certificado no Linux estão localizados, por padrão, na pasta /etc/pki/tls/certs ou, às vezes, em uma pasta específica do aplicativo, como /etc/httpd para o Apache. Geralmente, eles usam extensões .pem ou .crt e provavelmente serão nomeados yourdomain.pem ou yourdomain.crt, mas às vezes o nome genérico de arquivo “servidor” também é usado.

Se você solicitou o certificado SSL e o instalou no servidor, já deve saber o local e os nomes dos arquivos.


Como visualizar os detalhes completos do certificado

Você pode usar o OpenSSL para verificar a validade, o emissor e o assunto do certificado separadamente ou de uma só vez. Verifique se você tem acesso ao seu servidor e ao terminal SSH.

O OpenSSL oferece uma grande variedade de comandos para gerar, instalar e gerenciar certificados. Para verificar os detalhes de um certificado específico, execute o seguinte comando:

openssl x509 -in /root/mycertificate.crt -text -noout

Use esse comando OpenSSL para verificar a validade do certificado, o assunto, o emissor, os detalhes da chave e o algoritmo de assinatura. Aqui está o que você deve ver:

Veja os detalhes completos do certificado

Exibir o próprio certificado SSL (codificado)

O OpenSSL permite que você visualize o certificado SSL em seu formato codificado original. Execute o comando abaixo para exibi-lo:

$ echo | openssl s_client -servername howtouselinux.com -connect yourplc.com:443 2>/dev/null | openssl x509

Exibir o certificado SSL

Verificar se a chave corresponde ao certificado

Para verificar se as chaves públicas e privadas correspondem, você precisa extrair a chave pública de cada arquivo e gerar uma saída de hash para ela. Todos os três arquivos devem compartilhar a mesma chave pública e o mesmo valor de hash. Veja como usar o OpenSSL para verificar certificados e detalhes de chaves. Os comandos a seguir para gerar um hash da chave pública de cada arquivo:

openssl pkey -pubout -in privateKey.key | openssl sha256

Chave do Pub

openssl req -pubkey -in CSR.csr -noout | openssl sha256

Chave pública CSR

openssl x509 -pubkey -in certificate.crt -noout | openssl sha256

Certificado de chave pública

Verifique quem emitiu o certificado SSL

Se você quiser verificar o emissor do certificado SSL, execute a linha de comando abaixo. Ele mostrará a autoridade de certificação que assinou o certificado.

echo | openssl s_client -servername yourplc.com -connect yourplc.com:443 2>/dev/null | openssl x509 -noout -issuer


Verificar para quem o certificado SSL foi emitido

Você também pode verificar o assunto do certificado SSL. Dependendo do tipo de validação, você verá apenas o nome comum ou também o nome oficial da empresa.

$ echo | openssl s_client -servername .com -connect howtoyourplcuselinux.com:443 2>/dev/null | openssl x509 -noout -subject


Verificar a validade do certificado SSL no Linux

É importante saber quando o certificado SSL expira, para que você possa renová-lo com antecedência e evitar possíveis interrupções no site e violações de dados. Veja como verificar a data de expiração do certificado SSL no Linux:

$ echo | openssl s_client -servername howtouselinux.com -connect yourplc.com:443 2>/dev/null | openssl x509 -noout -dates


Exibir todas as informações acima sobre o certificado SSL

Você também pode usar um comando OpenSSL para verificar o emissor, o assunto e a data de expiração do certificado com o seguinte comando:

$ echo | openssl s_client -servername howtouselinux.com -connect yourplc.com:443 2>/dev/null | openssl x509 -noout -issuer -subject -dates

Informações completas sobre o certificado

Palavras finais

Se algo der errado com sua conexão SSL, verificar os detalhes do seu certificado é a primeira etapa para encontrar o culpado. No OpenSSL, você tem um ótimo utilitário para realizar todos os tipos de verificações, desde a inspeção do emissor do certificado até a análise de dados técnicos e a verificação de quando o certificado expira. O OpenSSL integra-se ao Linux e fornece controle sobre a instalação do SSL por meio de suas linhas de comando flexíveis.

Economize 10% em certificados SSL ao fazer seu pedido hoje!

Emissão rápida, criptografia forte, 99,99% de confiança no navegador, suporte dedicado e garantia de reembolso de 25 dias. Código do cupom: SAVE10

Escrito por

Redator de conteúdo experiente, especializado em certificados SSL. Transformação de tópicos complexos de segurança cibernética em conteúdo claro e envolvente. Contribua para melhorar a segurança digital por meio de narrativas impactantes.