Verificando a impressão digital de um certificado SSL?

22

Estou brincando com um agente Puppet e um mestre de marionetes, e notei que o utilitário Puppet cert fornece uma impressão digital para a chave pública do meu agente, uma vez que solicitou a assinatura:

$ puppet cert list
  "dockerduck" (SHA256) 1D:72:C5:42:A5:F4:1C:46:35:DB:65:66:B8:B8:06:28:7A:D4:40:FA:D2:D5:05:1A:8F:43:60:6C:CA:D1:FF:79

Como posso verificar se esta é a chave correta?

No agente Puppet, pegar um sha256sum me dá algo radicalmente diferente:

$ sha256sum /var/lib/puppet/ssl/public_keys/dockerduck.pem
f1f1d198073c420af466ec05d3204752aaa59ebe3a2f593114da711a8897efa3

Se bem me lembro, os certificados fornecem somas de verificação de suas chaves públicas nos próprios arquivos de chave reais. Como posso obter acesso a uma impressão digital de chaves?

    
por Naftuli Kay 03.07.2014 / 19:21

2 respostas

33

O utilitário de linha de comando OpenSSL pode ser usado para inspecionar certificados (e chaves privadas e muitas outras coisas). Para ver tudo no certificado, você pode fazer:

openssl x509 -in CERT.pem -noout -text

Para obter a impressão digital SHA256, você faria:

openssl x509 -in CERT.pem -noout -sha256 -fingerprint
    
por 03.07.2014 / 19:55
8

A melhor maneira de confirmar a impressão digital do agente, pelo menos no Puppet 3.6, é executar o seguinte comando no seu agente:

puppet agent --fingerprint
    
por 17.07.2015 / 10:43