记一次Windows server 2008 上客户端程序使用SSL第一次连接超时问题原因

问题原因:

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: 购买合法机构颁布的子证书

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容