我们使用 nginx 进行 SSL 终止并每年轮换 ssl 证书。但是每当我们轮换时,我们都会向用户发送有关应用更改的日期和时间的通知,并且他们必须同时进行更改。很少有客户使用的企业工具很少,并且他们需要在其信任存储中加载相同的证书。
所以我想检查是否有任何方法可以在一个域上临时部署两个证书(例如一周)。在此期间,两个证书均有效,因此客户可以在此期间迁移到较新的证书。可能是某种证书链或者可以帮助我们解决这个问题的东西。
PS:如果听起来太愚蠢,我很抱歉,只是想听听其他人对这个问题的看法。
谢谢, GG
最佳答案
虽然可以向对等方发送任意数量的证书(这就是发送中间证书时所做的操作),但预计与主机名匹配的证书是第一个,接下来是按正确顺序排列的链证书。客户不会只是查看所有证书并选择看起来最好的证书。
但是您应该可以提前向客户端提供新证书,并且客户端可以将此证书添加到受信任证书列表中,而无需替换旧证书。只要您提供旧证书,客户端就会发现它是可信的,一旦您转移到新证书,客户端也会发现它是可信的。
更好的是使用您自己的 CA 来颁发所有证书。然后,客户端只需一次将该 CA 安装为受信任的证书,然后它将自动信任该 CA 颁发的任何新证书,无论您是每年还是每天轮换。这就是它在浏览器中的工作方式,谷歌或其他任何人不需要将新证书发送到所有浏览器,而是由浏览器信任的 CA 签名。
关于ssl - 一个域上有多个 SSL 证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29645054/