OpenSSL: Criando uma Autoridade Certificadora (CA)

From Wiki

Vou mostrar como criar uma Autoridade Certificadora (CA).

Esse CA vai ser utilizado nos meus exemplos de configuração IBM Sterling.

Procedimento

Instalando

1) Instalando os Pacotes

yum install -y openssl

Criando uma Autoridade Certificadora

Definindo os valores default para a CA

Edite o arquivo

  • Linux: /etc/pki/tls/openssl.cnf
  • Windows: C:\Program Files\Common Files\SSL\openssl.cnf

e altere os dados da CA. Um exemplo de configuração final (apenas o bloco que interessa):

default_md   = sha256

...

default_bits = 2048

...

countryName                     = Country Name (2 letter code)
countryName_default             = BR
...

stateOrProvinceName             = State or Province Name (full name)
stateOrProvinceName_default     = DF

localityName                    = Locality Name (eg, city)
localityName_default            = Brasilia      # Esta linha, normalmente, não existe e você deverá criá-la.

0.organizationName              = Organization Name (eg, company)
0.organizationName_default      = Test Net Company

organizationalUnitName          = Organizational Unit Name (eg, section)
organizationalUnitName_default  = Ditec    # Vamos descomentar essa Linha

commonName                      = Common Name (eg, YOUR name)
commonName_max                  = 64
commonName_default              = Autoridade Certificadora do Test Net Company      # Vamos criar essa Linha

emailAddress                    = Email Address
emailAddress_max                = 64
emailAddress_default            = [email protected]      # Vamos criar essa Linha

Salve e feche o arquivo


Edite o arquivo

Alterando o valor default do tempo de duração dos certificados

Edite o arquivo

  • Linux: /etc/pki/tls/misc/CA
  • Windows: C:\Program Files\OpenSSL-Win64\bin\CA.pl

Alterando o tempo de duração do certificado da CA.

Exemplo para 100 anos:

$CADAYS="-days 36500";

O tempo de duração de um certificado comum é de 3 anos. Exemplo para 10 anos:

$DAYS="-days 3650";

Salve e feche o arquivo

Criando a CA

Execute o comando

perl CA.pl -newca

Aceite os valores default, pois já alteramos o openssl.cnf anteriormente.


Disponibilizando a CA

Agora que criamos a CA, vamos disponibilizar ele para importar no Navegador, ou para ser importado na Trust Store.

O certificado raiz é o arquivo

  • Linux: /etc/pki/tls/demoCA/cacert.pem
  • Windows: C:\Program Files\OpenSSL-Win64\bin\demoCA\cacert.pem

Renomeie-o para ca-company.crt e coloque em um site interno para download ou distribua via Police no MS Windows (GPO).


Criando um par de Chaves

Execute o comando

perl CA.pl -newreq


Informe

Country Name (2 letter code) [BR]: <ENTER>
State or Province Name (full name) [DF]:<ENTER>
Locality Name (eg, city) [Brasilia]:<ENTER>
Organization Name (eg, company) [Test Net Company]: <ENTER>
Organizational Unit Name (eg, section) [Ditec]:<ENTER>
Common Name (eg, YOUR name) []:www.test.net
Email Address [[email protected]]:[email protected]

Será criado 2 arquivos:

  • newreq.pem: Arquivo de requisição (CSR)
  • newkey.pem: Chave privada assinada

Ver também