Digamos que eu comece com um certificado.
Usando o openssl, posso imprimi-lo assim:
openssl x509 -in cert.pem -text -noout
E obterei alguma saída como Validity
, Issuer
e Subject
junto com Authority Key Identifier
e Subject Key Identifier
.
Como uso esses campos para calcular o próximo certificado da cadeia?
E então, quando eu obtiver o próximo certificado, decida qual deve ser o próximo certificado, etc.
Basicamente, estou querendo trabalhar toda a cadeia e colocar as coisas na ordem certa para o balanceador de carga EC2. Já que as soluções de rede não parecem oferecer apenas um pacote que funciona. Eles fornecem certificados individuais e eu tentei e tentei vários pedidos diferentes para o EC2 e ainda não consegui fazê-lo funcionar. Minha última aposta é tentar o openssl e resolver isso manualmente, em vez de adivinhar.
A saída
X509v3 Authority Key Identifier
daopenssl
chave filha corresponderá àX509v3 Subject Key Identifier
da chave de assinatura.Por exemplo, para o certificado SSL deste site e seu certificado pai:
51:68:FF:90:AF:02:07:75:3C:CC:D9:65:64:62:A2:12:B8:59:72:3B
é o que estabelece no certificado filho qual certificado o assinou, você deve ser capaz de usá-lo para encontrar os certificados de autoridade corretos.É importante observar que os certificados intermediários não são específicos do seu domínio ou certificado. Então, todo certificado emitido igual ao seu, tem exatamente os mesmos certificados intermediários.
Você pode pensar neles um pouco como o número de roteamento em seus cheques. O número de roteamento é necessário, mas realmente diz mais sobre seu banco do que sobre você. Seu número de conta, ou seu certificado neste caso, é o que é exclusivo para você.
Devido à natureza genérica dos certificados intermediários, existem sites como este:
https://www.ssl2buy.com/wiki/ssl-intermediate-and-root-ca-bundle
Que tenham todos os certificados intermediários pré-empacotados (e na ordem correta) para diferentes emissores de certificados.