06-10-2015

Onde está sua chave privada?

Jeremy Rowley

Última atualização: Novembro de 2020

Embora os períodos de validades dos certificados tenham sido reduzidos, a maioria dos profissionais de TI raramente mexe diariamente na sua configuração de certificados TLS/SSL. Vários usam seu material de chave uma ou duas vezes ao ano, quando precisam mudar de certificado. Pode ser um desafio rastrear e gerenciar certificados e o material da chave correspondente. Logo, gasta-se muito tempo procurando onde esse material está guardado.

Este artigo ajudará você a encontrar sua chave privada. As etapas variam segundo o sistema operacional do servidor Web. Trataremos dos sistemas operacionais mais comuns abaixo. Mas primeiro vamos às noções básicas das chaves privadas.

O que é uma chave privada?

Todos os certificados TLS funcionam com uma chave privada. A chave privada é um arquivo separado, usado na criptografia ou na descriptografia dos dados trocados entre seu servidor e os clientes conectados. Você, o proprietário do certificado, cria a chave privada ao solicitar um certificado com uma solicitação de assinatura de certificado (CSR). A autoridade de certificação (CA) que fornece o seu certificado, como a DigiCert, não cria nem tem a sua chave privada. Aliás, ninguém, exceto seus administradores, deve receber acesso a esse material. Tem havido mais casos em que as CAs precisaram revogar os certificados porque os administradores tinham publicado as chaves em um repositório online, como o GitHub. Mesmo que você acredite que o site não está transmitindo informações confidenciais, qualquer exposição de chaves privadas exigirá a revogação de todos os certificados correspondentes.

Se você ainda não instalou o certificado, é provável que a chave privada esteja no computador ou no servidor onde você gerou o par de chaves e o CSR. Ao criar o par, você salvou dois arquivos: um com a chave pública e outro com a chave privada. Para o OpenSSL, você pode executar o comando openssl versão -a para encontrar a pasta onde os arquivos de chave foram salvos (por padrão, /usr/local/ssl). No Windows (IIS), o sistema gerencia os CSRs para você. Primeiro, conclua a solicitação e depois exporte a chave (instruções abaixo).

Como encontrar a chave privada

Com o certificado já instalado, siga estas etapas para achar o arquivo da chave privada nestes sistemas operacionais comuns.

Apache

O local da chave privada estará especificado no principal arquivo de configuração do Apache, que é httpd.conf ou apache2.conf. A diretiva SSLCertificateKeyFile especifica o caminho no servidor onde a chave está armazenada.

O OpenSSL, a biblioteca de SSL mais popular do Apache, por padrão salva chaves privadas em /usr/local/ssl. Você pode executar o comando openssl versão -a para encontrar OPENSSLDIR e confirmar a pasta onde o servidor guarda as chaves.

Nginx

O local da chave privada é mencionado no arquivo do host virtual do seu site. Navegue até o server block do site (por padrão, no diretório /var/www/). Abra o principal arquivo de configuração do site e procure a diretiva ssl_certificate_key, que fornecerá o caminho do arquivo da chave privada. Alguns usuários têm um arquivo de configuração próprio para o SSL, como ssl.conf.

Windows (IIS)

Nos servidores Windows, o sistema gerencia os arquivos de certificados para você em uma pasta oculta, mas é possível recuperar a chave privada exportando um arquivo .pfx que contém o certificado (ou os certificados) e a chave privada.

Abra o Console de Gerenciamento Microsoft (MMC). Na Raiz do console, expanda Certificados (computador local). O certificado do seu servidor está na subpasta Pessoal ou Servidor Web. Localize e clique com o botão direito do mouse no certificado, identificado pelo Nome Comum, selecione Exportar e siga as instruções do assistente guiado. Isso lhe dará um arquivo .pfx. Obtenha as instruções detalhadas aqui.

Dependendo do que você deseja fazer com a chave privada, talvez precise dividir a chave privada em um arquivo distinto por meio da conversão do .pfx. Se você só quiser fazer o backup da chave ou instalá-la em outro servidor do Windows, ela já está no formato correto. Para usá-la em outras plataformas, como o Apache, será necessário converter o .pfx para separar o arquivo .key do .crt/.cer por meio do OpenSSL.

Caso não ache a chave privada por esse método, pode experimentar baixar o DigiCert SSL Utility. Com o software, você importa o certificado e localiza a chave privada de modo automático, caso ela esteja nesse servidor. Observe que esse é um software no local que não compartilha informações sobre o material da chave com a DigiCert. A DigiCert nunca obtém material de chave privada para certificados TLS, e as CAs são expressamente proibidas de manter cópias de chaves de certificados TLS (o que por vezes acontece com a assinatura de documentos e certificados S/ MIME) segundo a política de armazenamento raiz.

Onde mais a chave pode estar?

Se você seguiu as etapas para o seu sistema operacional, mas não achou a chave, pode estar procurando no lugar errado.

Se você usar um servidor que fornece conexões HTTPS que estão operando, a chave estará em algum lugar nesse servidor (ou acessível a ele). Caso contrário, as conexões HTTPS não seriam feitas. Só podemos tratar dos cenários padrão neste artigo. É possível que a sua organização use uma configuração personalizada. Você pode procurar um arquivo .key no seu servidor ou seguir as mesmas etapas para instalar um novo certificado, incluindo a especificação de uma chave privada em dado momento.

Em certas plataformas, o OpenSSL salva o arquivo .key no mesmo diretório onde o comando -req foi executado.

Caso você ainda precise instalar o certificado e não achou a chave, talvez ela não exista mais. Se você criou o CSR, mas não achou o arquivo da chave, basta emitir o certificado novamente. Primeiro, crie um novo CSR e desta vez salve a chave privada em um local de que se lembrará e use o certificado com a nova chave. Com a DigiCert, a reemissão é sempre gratuita.

Apesar de saber onde e como proteger o material da chave ser essencial para a segurança, sugerimos que você gere um novo par de chaves sempre que solicitar um novo certificado. A reutilização de material de chave não é recomendada e poderá provocar grandes problemas se a chave for comprometida e prejudicar a estrutura de segurança caso novas ameaças apareçam. É mais fácil do que nunca gerar material de chave e CSRs, e a DigiCert proporciona frequentes substituições de chave para ajudar as empresas a adotar uma boa rotina de segurança.

Descubra como a PKI apresenta um mundo conectado cheio de possibilidades; leia o nosso e-book PKI.

UP NEXT
pki

3 Surprising Uses of PKI in Big Companies and How to Ensure They Are all Secure

5 Min

Featured Stories

What is a CA’s Role in delivering digital trust?

Why recent Chinese encryption research isn’t a threat—yet

10-22-2024

Unlocking a competitive advantage with CRA compliance