如果在会话中替换SSL证书,对用户的浏览器会有什么影响?


8

鉴于现代浏览器逐步淘汰使用SHA1哈希算法签名的安全证书,我们正忙于将所有SHA1证书替换为SHA2。通常,我们可以在傍晚或周末很少或没有流量的情况下,为这些主要供内部使用的Web应用程序替换证书。

如果我在不知不觉中处于加密会话的中间并且替换了域的证书,将会发生什么?

为了安全起见,我们建议客户在进行此更改期间可以假设用户处于会话中,这可能会导致会话中断,并可能丢失尚未存储在数据库中的任何数据。如果我在更换证书的过程中处于会话中,可以假设替换证书后加载下一页时,浏览器会看到与建立会话时不同的签名证书,并导致会话“吓坏了”。我希望所有浏览器都能以类似​​的方式处理这种情况,但是如果我弄错了,请告诉我。

我花了大量时间来寻找有关浏览器如何处理这种情况的更多详细信息,但是我没有太多运气可以找到一般或技术信息。我真的很好奇,因此决定发布此问题,以期希望得到一个答案,该答案可以参考一些可靠的来源来简洁地回答Q。

Answers:


7

...我的浏览器将看到与建立会话时不同的签名证书,并导致会话“异常”。

从网站管理员的角度出发,并且没有深入探讨“ SSL的工作原理 ”(最好在Information Security上进行讨论)...

会话密钥将不再匹配,因此服务器或客户端浏览器将中止连接。然后,客户端浏览器将再次请求未接收到的下一页上的任何资源,这将打开一个新的连接,重新建立SSL握手,证书,密钥交换和会话密钥(如底部附近的简短讨论所示)在这里)。

由于新的SSL证书将发布到相同的域,因此用户可能不会注意到任何事情,因为仅证书会更改(即,仍将显示绿色锁),用户通常也不会查看,尤其是在页面上同一站点。


但是,您可能没有考虑的是,当您安装新的SSL证书时,无论如何都将不得不配置和重新启动服务器,因此无论如何会话都将关闭,并且浏览器将不会收到任何信息

因此,我建议您使用302 redirect暂时将所有流量重定向到“维护”页面,并在您的网站上提前发布一条通知,指出进行维护的时间以及该站点将无法使用的时间。

重定向的替代方法是发送503 Service Unavailable HTTP服务器响应代码,其中包含  Retry-After  HTTP标头响应字段,以指示服务器何时再次可用。

最后但并非最不重要的一点是,如果站点前端有多个服务器,则可以在另一台服务器上安装证书,并在更新其他服务器时将新的连接重定向到该服务器。您可以检查现有的Apache中的连接位置和IIS 这里帮助,如果你还没有使用故障安全或负载平衡设置。


证书位于前端的负载均衡器上,因此不会中断服务,也不需要503 /临时重定向。
达拉斯

因此,如果我位于10页工作流程的第5页上...我的会话将保留已在第1-5页上输入的信息,并使用新证书继续在第6页上运行,还是连接重置会丢失所有会话变量并启动我再次在第1页上新鲜吗?
达拉斯

这取决于您的Web应用程序的编码方式。它应跟踪用户的会话ID(存储在Cookie,表单字段,URL等中),该IDSSL / TLS会话不同。因此,如果连接中断(通常会发生),则用户的会话数据将保留一段时间,直到建立另一个连接为止。在没有跟踪会话ID的奇怪情况下,您应该将新连接卸载到另一台服务器,并等待现有连接完成或超时,然后再使该服务器脱机以更新其SSL证书。

对于措辞不佳,我深表歉意。我要说的是,当下一个连接来自与建立会话不同的证书时,会话是否会出现问题。会议是否在乎?我认为其他证书会对会话的恢复产生一定的影响,但是我给您的印象是您在说会话并不关心连接。我不知道SSL会话和“用户会话”之间有什么区别?我印象中,我们跟踪的会话ID是SSL / TLS会话ID,我认为这与用户会话也是同一回事。
达拉斯

我认为您在混淆一些术语: 会话ID由服务器生成,由于HTTP是无状态的,因此用于跟踪后续请求中的用户。所有TCP套接字连接都可以终止,因此由应用程序来跟踪用户何时进行连接(使用会话ID来完成)。例如:安全登录到银行或其他安全站点,单击某些链接,然后禁用您的nic卡,然后启用它并单击另一个链接...您仍将登录,因为他们的会话ID会对其进行跟踪应用。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.