Estou tentando validar / verificar se a chave rsa, o pacote CA e o certificado armazenados aqui estão ok. Eles não estão sendo atendidos por um servidor da web. Como posso verificá-los?
Estou tentando validar / verificar se a chave rsa, o pacote CA e o certificado armazenados aqui estão ok. Eles não estão sendo atendidos por um servidor da web. Como posso verificá-los?
Respostas:
Supondo que seus certificados estejam no formato PEM, você pode:
openssl verify cert.pem
Se o seu "ca-bundle" for um arquivo que contém certificados intermediários adicionais no formato PEM:
openssl verify -untrusted ca-bundle cert.pem
Se o seu openssl não estiver configurado para usar automaticamente um conjunto instalado de certificados raiz (por exemplo, in /etc/ssl/certs
), você poderá usar -CApath
ou -CAfile
especificar a CA.
-CApath nosuchdir
, a combinação de server.crt e cacert.pem deve incluir a CA raiz; se o openssl puder trabalhar apenas com uma CA intermediária com esses arquivos, ele reclamará.
/certs/
. isso causará um problema? porque estou empilhado em uma situação em que meu servidor funciona, o http curl funciona, mas https .. curl recebe erro. onde o site parou de funcionar.
Aqui está uma linha para verificar uma cadeia de certificados:
openssl verify -verbose -x509_strict -CAfile ca.pem -CApath nosuchdir cert_chain.pem
Isso não requer a instalação da CA em nenhum lugar.
Consulte https://stackoverflow.com/questions/20409534/how-does-an-ssl-certificate-chain-bundle-work para obter detalhes.
-CApath nosuchdir
isso para responder. Obrigado.
-CAfile
for apenas um certificado intermediário, o openssl reclamará. Esse é um comportamento correto, pois verify
requer uma cadeia completa até a CA raiz, mas pode ser enganoso.
OpenSSL 1.1.1 11 Sep 2018
) exige que o argumento -CApath
seja um diretório existente.
openssl x509
seção do manual.