从旧的.CSR获取内容

在我的新客户站点之一,我有一个即将到期的SSL证书。 我已经收到我的提供者过期通知。 之前的pipe理员相当详细,我find了用于请求即将到期的证书的.CSR。

然而,这个主机是一个debian主机,我已经证实,当Debian遭受OpenSSL随机数生成问题时,.CSR被生成。

所以。 现在我已经更新了debian主机上的OpenSSL,我想我必须重新生成.CSR来进行更新。 有没有办法找出在.CSR中使用了什么值,以确保新的.CSR是一致的?

尝试这个:

openssl req -in file.csr -noout -text 

为了将来的参考,你甚至不需要原始的CSR。

您可以从现有的x509证书创build新的请求。

 openssl x509 -x509toreq -in file.crt -signkey file.key -out file.csr 

一般来说,几乎所有的OpenSSL命令都支持被别人正确回答的标志。

 -noout -text 

这只是防止PEM输出,而不是显示人类可读的内容。

如果密钥是在Debian或Ubuntu服务器上生成的,而openssl有一个破损的随机数生成器,则必须重新生成密钥 。 不要只从旧密钥中生成新的CSR。 你仍然是可怕的。 一旦你有了新的密钥,你就可以用正确的值创build一个新的CSR。

openssl req -text -noout -in FILENAME.csr

应该做的伎俩。

我完全同意David Pashley的观点(但我还有一些补充…)。

密钥本身是脆弱的,而不是csr! 再生csr没有意义,你必须重新生成你的钥匙!

大多数CA甚至不接受与这些“被盗用”密钥相关的签名请求。

这里有一些有用的链接:

  • replace您的密钥: Debian密钥翻转
  • 关于这个话题有一个非常好的Debconf7的演示文稿 (网站似乎下降了)。

完全依赖于你在这里做什么,但是如果我们正在谈论与Web服务器一起使用的常规SSL证书,有时候简单的解决办法就是把网站( https://www.mywebsite.com )拉起来,看看那里的证书的属性。

在HTTPS / SSL模式下,右键单击浏览器中的“locking”,您应该可以看到几乎所有input的值。

希望这可以帮助。

你也可以通过检查当前的证书来确定什么信息被放入了原始的CSR中:

openssl x509 -in <certfile> -text -noout