Criar certificados no formato PEM

POSTADO POR Zevenet | 15 de março de 2016

VISÃO GERAL

O Zen Load Balancer é capaz de gerenciar conexões HTTPS (Perfil HTTP), portanto, o administrador do sistema deve criar seus próprios certificados (certificados autoassinados) ou adquirir Certificados assinados por uma Autoridade de Certificação, em ambos os casos o certificado deve ser construído em Formato PEM.

O Certificado Seguro deve ser criado sem senha e as chaves e o CSR devem ser gerados no servidor a ser protegido.

Positivos O SSL está pronto para entrar no formato PEM, mas o Rapid SSL precisa ser convertido, pois cada arquivo contém o certificado, a CA intermediária e a CA raiz separada.

REQUISITOS

O pacote openssl deve ser instalado para gerar as chaves no servidor, no nosso caso será a instância do Zen Load Balancer que já deve estar instalada.

Primeiro, gere a chave sem passphrase.

openssl genrsa -out host_domain_com.key 2048

Em seguida, gere a solicitação assinada de certificado (.csr) usando a chave gerada (.key) como entrada.

openssl req -new -key host_domain_com.key -out host_domain_com.csr

Depois que o certificado e os arquivos intermediários da autoridade de certificação forem entregues, garanta a obtenção do certificado raiz do emissor.

Todos os arquivos separados precisam estar no formato PEM: certificado do servidor, certificado intermediário e certificado de CA raiz. Se não for, converta o arquivo com o seguinte comando:

openssl x509 -in certFileName.cer -outform PEM -out convertedCertFileName.pem

Finalmente, temos a chave privada, o certificado emitido, o certificado intermediário e o certificado de CA raiz. Todo esse conteúdo de arquivo deve ser combinado para criar o arquivo PEM no formato UNIX.

GERAR CERTIFICADO NO FORMATO PEM

O certificado PEM deve ser construído com a seguinte estrutura.

-----BEGIN RSA PRIVATE KEY-----
Private Key (without passphrase)
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
Certificate (CN=www.mydomain.com)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Intermediate (Intermediate CA, if exists)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
Root (ROOT CA, who signs the Certificate)
-----END CERTIFICATE-----

Para criar uma estrutura PEM correta, é necessário concatenar os diferentes conteúdos de arquivo gerados na etapa acima com as separações:

-----BEGIN RSA PRIVATE KEY-----
uiMTxBQnK9ApC5eq1mrBooECgYB4925pDrTWTbjU8bhb/7BXsjBiesBBVO43pDYL
1AOO5EEikir239UoFm6DQkkO7z4Nd+6Ier9fncpN1p1EZtqPxT64nsUTNow/z1Pp
nUVxhqt4DT+4Vp5S7D9FQ+HagbhVInQXKXtT7FNFhpIxpRy512ElSuWvrELiZOwe
-----END RSA PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
wYDVR0fBDwwOjA4oDagNIYyaHR0cDovL3JhcGlkc3NsLWNybC5n
ZW90cnVzdC5jb20vY3Jscy9yYXBpZHNzbC5jcmwwHQYDVR0OBBYEFA8nu+rbiNqg
DYmhNE0IgXx6XRHiMAwGA1UdEwEB/wQCMAAwSQYIKwYBBQUHAQEEPTA7MDkGCCsG
gOYD8kmKOsxLRWeZo6Tn8
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
EgYDVR0TAQH/BAgwBgEB/wIBADA6BgNVHR8EMzAxMC+gLaArhilodHRwOi8vY3Js
Lmdlb3RydXN0LmNvbS9jcmxzL2d0Z2xvYmFsLmNybDA0BggrBgEFBQcBAQQoMCYw
JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmdlb3RydXN0LmNvbTANBgkqhkiG9w0B
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIDIDCCAomgAwIBAgIENd70zzANBgkqhkiG9w0BAQUFADBOMQswCQYDVQQGEwJV
UzEQMA4GA1UEChMHRXF1aWZheDEtMCsGA1UECxMkRXF1aWZheCBTZWN1cmUgQ2Vy
dGlmaWNhdGUgQXV0aG9yaXR5MB4XDTk4MDgyMjE2NDE1MVoXDTE4MDgyMjE2NDE1
jOKer89961zgK5F7WF0bnj4JXMJTENAKaSbn+2kmOeUJXRmm/kEd5jhW6Y
7qj/WsjTVbJmcVfewCHrPSqnI0kBBIZCe/zuf6IWUrVnZ9NA2zsmWLIodz2uFHdh
1voqZiegDfqnc1zqcPGUIWVEX/r87yloqaKHee9570+sB3c4
-----END CERTIFICATE-----

É obrigatório converter todo o arquivo PEM no formato UNIX.

Está disponível o certificado denominado zencert.pem para fins de teste a fim de ser usado com farms de perfis HTTPS.

Compartilhar no:

Documentação sob os termos da Licença de Documentação Livre GNU.

Esse artigo foi útil?

Artigos Relacionados