我有一个OpenSSl证书.我还需要私钥.我被告知它位于服务器的某个地方,而且真的,我发现了多个SSL密钥文件.
在我通过强力尝试所有这些之前:如果使用私钥创建证书,有没有办法在终端上找到?
在线Apache文档中的经典参考是
this FAQ.
原文链接:https://www.f2er.com/bash/385777.html在该文件中,使用模数的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.