替换CA证书和密钥

时间:2018-12-21 05:52:43

标签: openssl stunnel

我正在使用openssl管理自己的CA,并与stunnel一起使用它(及其签名的证书)。由于CA证书过期,我希望能够生成一个新的CA证书和密钥(与旧证书具有相同的dn),并在我推出此新CA时将stunnel配置为在一段时间内都信任两者

因为旧的和新的CA证书具有相同的名称,它们具有相同的哈希,所以我使用stunnel的{​​{1}}选项传递包含-CApath和{ {1}}。我也尝试过通过<hash>.0通过CA证书,但这似乎无济于事。

根据openssl docs

  

根据主题名称,密钥进行证书匹配   标识符(如果有),以及从   要验证的证书。如果这些数据不匹配,则下一个   证书将被尝试。

虽然CA的使用者名称相同,但是密钥标识符和序列号不同,因此我希望openssl在TLS协商期间能够正确处理此问题。也就是说,先加载旧证书,然后在发现与加载新证书的密钥ID /序列号不匹配的情况下进行加载。因为这确实匹配,所以它将执行验证。我知道openssl会同时加载旧证书和新证书。

我看到的是<hash>.1(配置有-CAfile的一端)拒绝了新CA密钥签名的证书,其内容如下:

stunnel

如果新CA的名称与旧CA的名称不同,则说明一切正常,但文档向我建议,不必为新证书使用其他名称。这是openssl真正支持的东西吗?如果是这样,我的证书或client=no配置可能有什么问题,以阻止其工作?

0 个答案:

没有答案