Devo fornecer um certificado raiz ao configurar o certificado SSL no nginx

4

No teste Qualys SSL, sempre me avise que o certificado raiz é um download extra e pode ser removido com segurança.

No entanto, no site da Comodo, o guia deles sobre a instalação do cert on nginx é

NGINX Needed for this task: * PEM encoded certificates (Root, Intermediate(s) and 
Domain/Device) COMBINE (CONCATENATE) MULTIPLE CERTIFICATES INTO ONE FILE 

Você sabe, eles são uma CA e o autêntico respondente. Então, qual eu devo confiar?

Atualizações: também reúno mais recomendações de outras autoridades de certificação

Sugira adicionar o certificado raiz

Sugira que não seja necessário o certificado raiz

Tão confuso?

    
por Ryan 18.01.2015 / 15:28

2 respostas

13

Ambos, Qualys SSL test e Comodo estão corretos. Comodo está correto da perspectiva do código do lado do servidor. O Nginx deve confiar nos certificados que usa.

Por outro lado, o teste Qualys SSL está correto da perspectiva do protocolo de rede. Durante a negociação de SSL, o servidor deve enviar seu próprio certificado SSL e todos os certificados CA intermediários, exceto o certificado raiz. Uma referência de RFC 5246 §7.4.2 :

certificate_list This is a sequence (chain) of certificates. The sender's certificate MUST come first in the list. Each following certificate MUST directly certify the one preceding it. Because certificate validation requires that root keys be distributed independently, the self-signed certificate that specifies the root certificate authority MAY be omitted from the chain, under the assumption that the remote end must already possess it in order to validate it in any case.

    
por 18.01.2015 / 16:02
2

O ponto da validação da cadeia de certificados é que você possui certificados (raiz) confiáveis localmente e, a partir daí, adia a confiança para os certificados enviados pelo ponto. Portanto, o servidor deve enviar apenas o certificado folha e os certificados intermediários necessários para construir a cadeia confiável de um certificado raiz local para o certificado folha. O que significa que você não deve enviar o certificado raiz, mas se você não o fizer, normalmente será ignorado.

E você deve certificar-se de adicionar os certificados na ordem correta, ou seja, primeiro o certificado da folha e depois os certificados da cadeia na ordem de assinatura correta. Alguns servidores ou clientes podem trabalhar em uma ordem errada, mas você não deve contar com isso.

    
por 18.01.2015 / 15:51