Fonte: How to manually generate a certificate signing request csr using openssl
openssl req -newkey rsa:2048 -keyout wildcard.seusite.com.br.key -out wildcard.seusite.com.br.csr
Como Gerar um CSR e Chave com OpenSSL
O processo para gerar uma solicitação de assinatura de certificado (CSR) e a chave privada correspondente é simples com o OpenSSL, que é uma ferramenta robusta e de código aberto. O CSR é necessário pela Autoridade Certificadora (AC) para emitir um certificado digital que autentica a identidade do seu site e permite a utilização do protocolo SSL/TLS. Siga os passos abaixo para gerar seu CSR e chave privada:
Passo 1: Abra o Terminal ou Prompt de Comando
Para usuários de sistemas Unix (como Linux e Mac), abra o Terminal. Usuários do Windows podem precisar instalar o OpenSSL e usar o Prompt de Comando ou o PowerShell.
Passo 2: Gere a Chave Privada
No terminal ou prompt de comando, digite o comando:
openssl genrsa -out wildcard.seusite.com.br.key 2048
Este comando irá gerar uma chave privada RSA de 2048 bits e salvá-la no arquivo wildcard.seusite.com.br.key
. É importante proteger esta chave, pois ela é necessária para instalar o seu certificado SSL/TLS.
Passo 3: Gere o CSR com a Chave Privada
Agora, com a chave privada gerada, use -a seguinte linha de comando para criar o CSR:
```shell openssl req -new -key wildcard.seusite.com.br.key -out wildcard.seusite.com.br.csr ```
Você precisará fornecer informações que serão incorporadas ao seu CSR. Estes detalhes são conhecidos como Distinguished Name (DN) e incluem o nome comum (seu domínio), organização, departamento, cidade, estado e país. Certifique-se de inserir esses detalhes com precisão, pois eles serão utilizados pela Autoridade Certificadora para validar sua identidade e emitir o certificado SSL/TLS.
Durante a criação do CSR, você será solicitado a inserir esses detalhes. Aqui está um exemplo do que será solicitado e como você pode responder:
Country Name (2 letter code) [AU]:BR
State or Province Name (full name) [Some-State]:Sao Paulo
Locality Name (eg, city) []:Sao Paulo
Organization Name (eg, company) [Internet Widgits Pty Ltd]:SeuSite Comercio Eletronico SA
Organizational Unit Name (eg, section) []:Tecnologia da Informacao
Common Name (eg, your site's domain name) []:*.seusite.com.br
Email Address []:contato@seusite.com.br
Note que o campo Common Name deve conter o domínio completo que você deseja proteger com o certificado SSL/TLS. Se você estiver gerando um CSR para um certificado wildcard, o nome comum deve começar com um asterisco (como no exemplo acima).
Passo 4 : Verifique o CSR
Após a geração do CSR, é recomendável verificar se todas as informações estão corretas. Para isso, utilize o seguinte comando:
openssl req -text -noout -verify -in wildcard.seusite.com.br.csr
Este comando ex ibe o conteúdo do CSR em um formato legível para que você possa revisar todos os detalhes. Se houver algum erro nas informações, será necessário gerar um novo CSR com as informações corretas.
Passo 5: Envie o CSR para a Autoridade Certificadora
Com o CSR devidamente gerado e verificado, o próximo passo é submetê-lo à Autoridade Certificadora de sua escolha. A maioria das ACs fornece um processo online onde você copia e cola o conteúdo do seu CSR em um formulário para solicitar seu cert ificado. O CSR é submetido no formato de texto, então abra o arquivo .csr gerado com um editor de texto, como o Notepad ou o vim, e copie todo o conteúdo. A seguir, cole esse conteúdo no formulário fornecido pela AC.
Passo 6: Aguarde a Emissão do Certificado
Depois de submeter o CSR à Autoridade Certificadora, você precisará aguardar o processo de validação. O tempo de espera pode variar dependendo da AC e do tipo de validação requerido, como validação de dom ínio (DV), validação de organização (OV) ou validação estendida (EV). Uma vez validado, a AC irá emitir o certificado SSL/TLS, que você poderá instalar no seu servidor.
Passo 7: Instale o Certificado no Servidor
Após receber o certificado SSL/TLS da Autoridade Certificadora, você deverá instalar no seu servidor web. O processo de instalação varia dependendo do servidor que você está utilizando. Abaixo, segue um exemplo genérico que poderá adaptar aos requisitos específicos do seu servidor: