提示
X
本案例来自tskb,请前往tskb修改源内容:立即前往
'>

基础排查-步骤二:检查SSL证书链是否完整

|

问题描述

证书链不完整会导致出现证书告警,尤其涉及移动终端访问时候甚至会直接失败,例如苹果手机或者其他客户端访问正常,但是安卓手机访问会提示:网站证书不可信且证书链长度为1,可能是服务器没有配置完成的证书链。或者纯内网电脑访问直接白屏。

告警信息

有效排查步骤

1、客户端访问https的应用的时候,ssl握手的时候客户端会校验从服务器上获取的证书是否是权威机构颁发,或者说浏览器内置的中级跟根证书里面是否有证书对应的中级证书和根证书。

2、不同的浏览器内置的证书不一样。如果证书是由权威机构颁发的。如果是,本身浏览器又没有内置的话,一般windows客户端会自动去公网下载,如果电脑本身无法上网,这时候,就无法下载,导致出现异常。另外就是手机客户端安卓系统的不会有自动下载的动作。苹果系统的可以自动下载。从而表现的问题现象为能上网的电脑访问正常,但是内网电脑不正常,苹果手机访问正常,但是安卓手机访问有弹窗,或者白屏。

3、缺少证书链导致证书链不受信任,尽管一些主流浏览器等会自动补齐证书链影响不大,但是如果服务器没有安装证书链,那么对于某些非主流浏览器、安卓手机设备,应用程序等可能没办法验证ssl证书的真实性才会报不信任。所以为了兼容所有客户端,服务器需要安装证书链。

4、如何区分ssl策略使用的证书是否有证书链。
方法一、
705版本及以上版本在【资源管理】-【证书管理】-【ssl证书】里面点击证书名字,查看证书链就可以看到。如图一,只有一级,表示没有完整的证书链,正常应该和浏览器点开证书以后看到的证书路径一样。比如图2



7.0.5之前的版本AD控制台导出SSL证书(PEM格式),解压如下


然后用notepad++打开server.crt看到,如下只有一段,说明没有证书链


方法二、
直接通过https://myssl.com/网站检测网站是否正常,如图提示证书链不完整



方法三、
在客户端上找包,抓到ssl握手的过程,从数据包里面,服务器给客户端会回的certificate字段查看下发的证书是否下发了多张证书,如果只有一张,说明不完整。

解决方案

合成证书链
7.0.5版本之前,参考点击跳转
7.0.5版本及以后的版本,不需要手动合成,找到设备证书,中级证书,根证书以后,加上私钥key,直接控制台导入就可以。

我要分享
文档编号: 250183
作者: admin
更新时间: 2023-04-19 14:59
适用版本: