Construindo uma cadeia de certificados SSL

Os certificados SSL geralmente têm um ou mais intermediários, formando uma cadeia para um pacote CA confiável incluído em seu sistema operacional ou navegador. Com o nginx, você precisa concatenar o certificado SSL e os intermediários em seu formato ASCII PEM.

Encontre o hash do emissor do certificado SSL:

openssl x509 -noout -in $SSL_CERT -issuer_hash

Encontre o certificado intermediário verificando seu hash, que deve corresponder ao acima.

openssl x509 -noout -in $INTR_CERT -hash

Eu nomeio certificados intermediários com seu hash no nome do arquivo para mapear os hashes para certs.

Repita isso para os certificados intermediários até chegar a uma raiz confiável em seu sistema operacional ou pacotes de CA do navegador.

Agora, encontrar os certs intermediários para verificar é uma dor. Não há uma maneira padrão de solicitar sua localização em um certificado SSL, e muitos provedores não facilitam a busca ou o download.