O que é uma CSR e como criá-la?
Uma CSR (Certificate Signing Request, solicitação de assinatura de certificado) é um bloco de texto codificado que uma organização ou indivíduo envia a uma autoridade de certificação (CA) ao solicitar um certificado SSL. O CSR contém informações que a CA usa para criar o certificado, como a chave pública do solicitante e os detalhes da organização. Esse certificado é então usado para proteger as comunicações em sites, ativando o HTTPS.
Neste artigo, explicaremos o que é um CSR, por que ele é importante e forneceremos instruções passo a passo sobre como criá-lo.
O que é uma CSR (Solicitação de assinatura de certificado)?
Uma CSR é um arquivo que inclui a chave pública do proprietário de um site e informações importantes sobre o site e a organização que está solicitando o certificado SSL. Essa solicitação é então enviada a uma autoridade de certificação (CA), como Let’s Encrypt, DigiCert ou Comodo, que valida os detalhes antes de emitir o certificado.
Um CSR típico inclui:
- Chave pública: Usada no processo de criptografia.
- Nome comum (CN): O nome de domínio totalmente qualificado (FQDN) que você deseja proteger (por exemplo, www.example.com).
- Nome da organização: O nome da empresa ou do indivíduo que está solicitando o certificado SSL.
- Unidade organizacional: O departamento ou divisão dentro da empresa (opcional).
- Locality (Localidade): A cidade onde a organização está localizada.
- Estado/província: o estado ou a província onde a organização está sediada.
- Country (País): O código de duas letras do país (por exemplo, US para os Estados Unidos).
O CSR não contém a chave privada do site, que é gerada e mantida em segurança no servidor.
Por que um CSR é importante?
A CSR é uma parte essencial do processo de emissão do certificado SSL. Veja por que ela é importante:
1. Solicitação de um certificado SSL
Ao solicitar um certificado SSL, você precisa enviar um CSR para a autoridade de certificação. A CA usa as informações do CSR para emitir um certificado que corresponda ao domínio, à organização e ao servidor.
2. Segurança
O CSR inclui a chave pública, que é usada para criptografar dados entre o servidor e o cliente (o navegador). A chave privada, que é gerada juntamente com a chave pública, é mantida em segurança no servidor e nunca é compartilhada com ninguém. Juntas, elas permitem comunicações seguras usando SSL/TLS.
3. Validação
A autoridade de certificação usa as informações do CSR para verificar a identidade do solicitante do certificado. Dependendo do tipo de certificado SSL (por exemplo, Validação de domínio, Validação de organização ou Validação estendida), a CA pode executar diferentes níveis de verificações antes de emitir o certificado.
Como criar uma CSR
A criação de uma CSR envolve a geração de um par de chaves público-privadas e, em seguida, a criação da CSR usando essas chaves. O processo varia um pouco, dependendo do servidor que você estiver usando, mas as etapas básicas são as mesmas.
Etapa 1: Gerar uma chave privada
A primeira etapa da criação de uma CSR é gerar uma chave privada. A chave privada será usada para criptografar e descriptografar dados em seu site e deve ser mantida em segurança.
Exemplo de uso do OpenSSL (Linux, macOS ou Windows com OpenSSL instalado):
- Abra um terminal ou prompt de comando.
- Execute o seguinte comando para gerar uma chave privada:
openssl genrsa -out private.key 2048
Isso gerará uma chave privada RSA de 2048 bits e a salvará em um arquivo chamado private.key.
Etapa 2: gerar a CSR
Depois que você tiver a chave privada, a próxima etapa é criar o CSR. O CSR contém a chave pública (derivada da chave privada) e informações sobre sua organização.
Exemplo usando OpenSSL:
- No terminal, execute o seguinte comando:
openssl req -new -key private.key -out yourdomain.csr
Você será solicitado a inserir informações para o CSR. Veja a seguir o que você precisa fornecer:
- Nome do país (código de duas letras): O código de duas letras de seu país (por exemplo, EUA, Reino Unido).
- Nome do estado ou província: O nome completo do estado ou província (não abrevie).
- Nome da localidade: A cidade ou localidade onde sua organização está localizada.
- Nome da organização: O nome legal completo de sua empresa ou organização (ou seu nome, se for uma pessoa física).
- Nome da unidade organizacional: O departamento ou divisão (opcional).
- Nome comum: O nome de domínio totalmente qualificado (FQDN) que você deseja proteger (por exemplo, www.example.com ou example.com).
- Endereço de e-mail: Seu endereço de e-mail de contato (opcional).
- Depois de inserir as informações necessárias, o CSR será salvo em um arquivo chamado yourdomain.csr.
Etapa 3: enviar o CSR para a autoridade de certificação
Depois que o CSR for gerado, você poderá enviá-lo à autoridade de certificação (CA) ao solicitar um certificado SSL. A CA usará as informações do CSR para emitir o certificado.
Etapa 4: Salvar a chave privada com segurança
A chave privada gerada na Etapa 1 é crucial para a criptografia SSL. Certifique-se de mantê-la em segurança e não a compartilhe com ninguém. Se a chave privada for perdida ou comprometida, você precisará gerar uma nova chave e solicitar um novo certificado SSL.
Ferramentas e métodos comuns de CSR
Além de usar o OpenSSL, você também pode criar CSRs usando outras ferramentas e métodos, dependendo da plataforma que estiver usando:
1. Usando o cPanel (painel de controle de hospedagem na Web)
Se o seu site estiver hospedado em um provedor que usa o cPanel, você poderá criar uma CSR diretamente no painel de controle:
- Faça login na sua conta do cPanel.
- Navegue até a seção Segurança e clique em SSL/TLS.
- Em Solicitações de assinatura de certificado (CSR), clique em Gerar, visualizar ou excluir solicitações de assinatura de certificado SSL.
- Preencha o formulário CSR com as informações necessárias (semelhante ao que você insere no OpenSSL).
- Clique em Generate (Gerar). O CSR será exibido e você poderá copiá-lo para enviá-lo à sua CA.
2. Usando o IIS (Windows Server)
Se você estiver gerenciando um site em um Windows Server usando o IIS, poderá criar uma CSR usando o IIS Manager:
- Abra o Gerenciador do IIS em seu servidor.
- Selecione seu servidor no painel Conexões.
- Clique duas vezes em Certificados do servidor na seção IIS.
- No painel Ações, clique em Criar solicitação de certificado.
- Preencha os detalhes do CSR e clique em Next (Avançar).
- Escolha o provedor de criptografia e o comprimento do bit (geralmente 2048).
- Salve o CSR em um arquivo e envie-o para a CA.
Conclusão
A CSR (Certificate Signing Request, solicitação de assinatura de certificado) é uma parte essencial do processo do certificado SSL, permitindo que você solicite um certificado a uma autoridade de certificação. Ele contém informações importantes sobre sua organização e o domínio que você deseja proteger. Ao gerar um CSR usando ferramentas como OpenSSL, cPanel ou IIS, você pode obter um certificado SSL que protegerá seu site e permitirá a comunicação segura entre o servidor e seus visitantes.
Lembre-se de manter sua chave privada segura e de seguir as instruções da CA para concluir a instalação do certificado SSL. Com um certificado SSL configurado corretamente, você garantirá que seu site permaneça seguro e confiável para os usuários.