bash – 如何确定某个私钥是否创建了OpenSSL证书?

前端之家收集整理的这篇文章主要介绍了bash – 如何确定某个私钥是否创建了OpenSSL证书?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个OpenSSl证书.我还需要私钥.我被告知它位于服务器的某个地方,而且真的,我发现了多个SSL密钥文件.

在我通过强力尝试所有这些之前:如果使用私钥创建证书,有没有办法在终端上找到?

在线Apache文档中的经典参考是 this FAQ.

在该文件中,使用模数的md5,因为

As the public exponent is usually 65537 and it’s difficult to visually check that the long modulus numbers are the same,you can use the following approach

这给出了:

$openssl rsa -noout -modulus -in key.pem.decrypted | openssl md5
(stdin)= 9fxxfoobar558d9xx0045a89467d2bxx

$openssl x509 -noout -modulus -in crt.pem | openssl md5
(stdin)= 9fxxfoobar558d9xx0045a89467d2bxx

我建议使用过程替换来避免模数的视觉比较:

$diff \ 
    <(openssl x509 -noout -modulus -in cert.pem) \
    <(openssl rsa -noout -modulus -in key.pem.decrypted)

如果输出为空,则私钥与证书匹配.

这只是比安德鲁舒尔曼的答案更方便的比较字符串的方式,当然,这也是有效的.

另一个参考here.

猜你在找的Bash相关文章