问题原因:
1. windows 有一个默认组策略,如果SSL根证书在系统中不存在会向根服务器请求,请求的超时时间默认是15s.
2. 由于我们的根证书是自己生成的在系统中是不存在的,所以系统会向根服务器请求.
3. 为什么我们本地没有出现这个问题,因为我们本地是连接的上网络的所以不会有这个问题.如果本地只是简单的断网也不能复现这个问题,因为windows底层向根服务器同步证书是有时效性的,会隔一段时间才同步(具体配置在哪里没有去找).,本地断网后还要将机器时间调大(调大10年)就会复现这个问题.
复现方法:
1. 关闭外网连接:修改DNS服务器配置,将DNS服务器调整为一个不可达的地址
2. 修改机器时间:将机器时间调大10年
3. 使用客户端进行连接
解决方法:
方法1. 关闭系统组策略
a. 命令行执行gpedit.msc
b. 点开:计算机配置/管理模板/系统/Internet 通信管理/Internet 通信设置 ;
c. 设置 关闭自动根证书更新 开启
方法2: 将根证书安装到客户端上
方法3: 使用非SSL进行通讯
方法4: 购买合法机构颁布的子证书