Certificado HTTPS do Host .p7b no nginX

1

Nós temos um requisito para mudar os serviços web de HTTP para HTTPS, então geramos .csr e fornecemos ao nosso cliente e recuperamos os arquivos .p7b e .cer em troca de usá-los no nginX hospedado no servidor linux.

Sou novo no nginX e, de acordo com o meu entendimento, .p7b e .cer são arquivos de certificado, mas estou confuso sobre qual deles devo usar no parâmetro ssl_certificate ou preciso concatenar ambos arquivos e passar o arquivo resultante para ssl_certificate para servir a finalidade?

server {

listen   443;
ssl    on;
ssl_certificate    /etc/ssl/your_domain_name.pem; (or bundle.crt)
ssl_certificate_key    /etc/ssl/your_domain_name.key;

server_name your.domain.com;
access_log /var/log/nginx/nginx.vhost.access.log;
error_log /var/log/nginx/nginx.vhost.error.log;
location / {
root   /home/www/public_html/your.domain.com/public/;
index  index.html;
}

}

Estou seguindo links diferentes ao longo deste link, mas não consegui encontrar uma resposta adequada.

Alguém pode me dizer em detalhes como devo usá-los?

PS: Mudando a pergunta do StackOverFlow para o SuperUser.

    
por Michael 06.06.2017 / 08:41

1 resposta

4

Ambos contêm os mesmos dados (principalmente), em diferentes formatos. O Nginx irá querer o formato "puro" .crt, mas nem todas as ACs incluem os dados necessários, por isso é possível que você precise converter de .p7b de qualquer maneira. (Veja também link .)

O arquivo ssl_certificate tem dois requisitos:

  • Para o nginx (e muitos outros serviços), ele deve estar no formato textual "codificado pelo PEM", com os cabeçalhos BEGIN CERTIFICATE .

    Às vezes, .cer arquivos estão em formato binário. Verifique com um editor de texto; você pode usar openssl x509 -inform DER < thing.cer > thing.crt para converter para o formato textual.

  • O arquivo de certificado também deve conter a cadeia de certificados intermediários - novamente, abra com um editor de texto (ou use certtool -i ).

    Algumas CAs os incluem como arquivos separados, caso em que precisam ser concatenados juntos (primeiro seu certificado, seguido por intermediários).

Como você também obteve os mesmos certificados em um arquivo .p7b, pode ser mais seguro converter esse em um arquivo de certificado PEM:

openssl pkcs7 [-inform DER] -print_certs < thing.p7b > fullchain.crt

O arquivo .crt resultante deve ter tudo necessário.

    
por 06.06.2017 / 09:34

Tags