我丢失了我的private.key
文件,该文件对于我的 SSL 证书的正常运行是必需的。我只有certificate.crt
文件。
是否可以private.key
从文件生成文件certificate.crt
?从我读到的内容来看,我不这么认为。如果我错了,我不知道该怎么办。
我该如何提交才能certificate.crt
使其正常工作?
Apache 需要所有:
certificate.crt
intermediate.pem
private.key
文件;例如:
SSLCertificateFile /etc/ssl/crt/certificate.crt
SSLCertificateChainFile /etc/ssl/crt/intermediate.pem
SSLCertificateKeyFile /etc/ssl/crt/private.key
答案1
不,不可能private.key
从certificate.crt
文件生成文件。如果以下内容不适用于您,您将需要生成新密钥和新证书。
您可以询问您的证书提供商是否愿意重新生成您的证书,一些公司提供了这种可能性。
答案2
正如@John 已经说过的,这是不可能的。 SSL证书.crt
包含公钥;在非对称加密中,不可能从公钥恢复私钥。
另请注意,SSL 证书必须可公开访问才能使用;它由 HTTPS Web 服务器呈现给每个连接的客户端,因此从逻辑上讲,人们无法使用它来派生私钥。
所以certificate.crt
现在已经没用了。您需要生成新的密钥对并向 CA 发送 CSR,以便他们可以向您发送新的证书。
另请注意:
SSLCertificateFile
指定您的 SSL 证书,其中包含您的公钥并由 CA 签名;SSLCertificateKeyFile
指定与您的公钥关联的私钥;SSLCertificateChainFile
指定证书链,不是必填参数事实上,它在较新版本的 Apache 中已被弃用:SSLCertificateChainFile
在版本 2.4.8 中已过时,并SSLCertificateFile
扩展为还可以从服务器证书文件加载中间 CA 证书。