【问题标题】:Problems verifying SSL certificate验证 SSL 证书时出现问题
【发布时间】:2015-02-05 20:00:55
【问题描述】:

对于学校,我们目前正在研究 SSL 证书。

对于本周的任务,我们必须在 VirtualBox 上安装 Fedora Workstation 并做一些 SSL 工作。

其中一项作业如下:

使用 openssl 命令生成公钥/私钥对和 CSR。

我使用以下命令生成了一个公钥/私钥对:

openssl genrsa -out Desktop/mykey.key 2048

生成密钥对后,我必须对其进行验证。但是如何验证密钥?这到底是什么意思?只需取出公钥并检查它是否与私钥匹配? 这是第一个问题。

我使用以下命令生成了 CSR:

openssl req -new -key Desktop/mykey.key -out Desktop/myCSR.csr

这是正确的方法,对吧?

使用以下命令检查/验证 CSR 文件:

openssl req -text -noout -verify -in Desktop/myCSR.csr

我认为这也是正确的方法。

这是“简单”的部分,现在是更难的部分:

我们必须使用 xca 来创建数据库和 CA 根证书。然后我们必须从上面的问题中导入 csr 并签名。我通过右键单击它并选择 sign 对其进行了签名。然后我们必须导出 CA 和签名密钥并验证它。但它们究竟是什么意思?我的猜测是验证证书是否由 CA 签名,但我遇到了问题。 为此,我们必须使用 openssl x509,但它不起作用。

当我右键单击签名密钥并将其导出为 PEM 文件时,该文件中的内容如下:

----- BEGIN CERTIFICATE REQUEST -----
MIIC6......
----- BEGIN CERTIFICATE REQUEST -----

虽然分配说:导出签名证书。但这甚至是证书吗?

我该如何验证呢?

我使用了很多命令,比如

openssl x509 -in Desktop/exported.pem -text -noout

但我得到的输出总是这样的:

我尝试了各种命令并阅读了所有谷歌页面,但没有任何帮助。 这是第二个问题

希望大家帮忙,谢谢!

【问题讨论】:

    标签: ssl fedora signing


    【解决方案1】:

    当您验证证书时,您正在检查它的 CA 是否被识别,并且它与 CA 的指纹匹配。您似乎没有向 openssl 命令提供 CA 证书。尝试指定-CA <your CA cert file

     $ openssl x509 --help
    ...
     -CA arg         - set the CA certificate, must be PEM format.
    

    【讨论】:

    • 好的,谢谢!看起来,我没有导出证书,而是我之前导入的 CSR。在 xca: Certificates tab > Expand CA > Export certificate 是导出它的方式。然后我使用了openssl verify -CAfile MyRootCA.crt MySignedCert.crt,它返回OK!所以这行得通。 openssl x509 甚至可以做到这一点吗?它没有verify 命令...
    • 抱歉 x509 打错了 :)
    • 好的 :) 所以使用x509 进行验证甚至是不可能的?我遵循的学校手册是错误的。引用:“导出 CA 和签名证书并使用openssl x509 命令检查”
    • 是的,我想,我想我们可以将其归咎于学术水平下降,但我想这是一个容易犯的错误!
    • 我撒谎!您可以使用x509 命令来验证csr,而不是证书。看看这里的一半digitalocean.com/community/tutorials/…这些东西有细微差别。
    猜你喜欢
    • 2014-08-25
    • 2021-12-10
    • 2019-01-26
    • 2018-09-15
    • 2014-08-07
    • 2010-11-24
    • 2019-10-01
    • 2017-04-18
    • 2011-07-16
    相关资源
    最近更新 更多