如何从我自己的CA创build一个SSL证书链?

我使用自己的CA为我的服务创buildSSL证书。 这些证书由我的CA直接签署。

在我看来,这可能是一个弱项策略,就好像证书被破坏一样,我需要从一个CA创build新的证书。 如果CA受到攻击,每个服务的游戏结束都需要更新。

所以我的理解是,“保护”自己和“稀释”关注的典型方式是创build一个证书链,并签署服务证书的链末,以便如果签名人受到攻击,下一个级别可以用来创build一个新的签名证书。

我能得到那个吗?

我想要做的是创build我自己的证书链。

整个TLS / SSL的东西对我来说还是有点朦胧,但是正如我所看到的,首先创build一个主密钥,然后用openssl genrsa然后用openssl req -x509 -new创build一个自签名证书来创buildCA.

然后我可以使用openssl req -new -key' and sign the request with my CA with -key创build新的密钥和证书签名请求, openssl req -new -key' and sign the request with my CA with openssl x509 -req -CA ca.pem openssl req -new -key' and sign the request with my CA with …`

那么,要创build证书链,应该怎么做?

我是否简单地创build一个新的密钥,新的签名请求,并用最后签名的证书而不是CA签名? 依此类推,直到我有足够的保护水平,然后签署所有证书/密钥对与最低级别的证书?

这东西很混乱,我想把它弄好;-)

我发现的所有关于TLS的东西都是非常复杂的,而“简单”的教程很模糊。 我正在浏览openssl的man-pages,但是我想简单地解释一下这个过程,然后我会确保每一步都正确。

感谢您的洞察力。

您使用根CA签署中间CA请求。 凭借此签名证书颁发机构,根CA可以保持脱机状态。

根CA仍然可以信任,并在必要时发出replace签名CA. 那么挑战就是证书撤销,特别是如果你不控制所有的客户。

如果您手动执行该过程,则会涉及到该过程。 有关指南,请参阅https://jamielinux.com/docs/openssl-certificate-authority/

看起来像很多大惊小怪,当我们的encryption现在在公共testing版…

https://letsencrypt.org/