加密套件问题导致部分服务器响应空白

问题描述

一套单体系统部署在38和39服务器上,大部分用户直连39环境,无法登陆,而直连38环境能正常访问。

诊断流程

总体流程概述

首先,我们先检查39服务器,重点包括SSL是否配置正确、是否已开启SSL拒绝日志记录、域日志是否有异常,结果尚未发现问题。

在这里插入图片描述

其次,准备在异常客户端系统上,检查网络问题。

1. 使用ping检查和比较38、39网络连通性,结果正常;

2. 使用tracert命令检查和比较38、39路由情况,结果正常。

3. 安装wireshark软件,详细检查网络包。

第三,通过网络异常包,分析并解决。

网络包检查

分三次拦截,每次访问并拦截38/39 https请求,生产三组pcapng文件。

我们只需截取网络报文中的从请求到第一次弹框阶段报文即可。经反复比较,认为在SSL握手阶段 “server hello”,38、39返回的报文首次不同,如下:

39
在这里插入图片描述

38

在这里插入图片描述

很显然38和39返回的加密套件Cipher Suite 不同,加密套件用于后续会话秘钥加解密,跟加密套件有关的程序包括操作系统、浏览器插件、JDK。操作系统决定了套件的实现总集合,浏览器插件或JDK根据情况选择合适的加密套件。接下来检查39环境加密套件设置,期望返回如38一致的加密套件,测试通过则证明其是主因。

加密套件检查与修复

通过cmd systeminfo检查38、39操作系统,发现版本一致,尚未发现问题。

在这里插入图片描述

接下来我们的方向应调整39,使返回的加密套件和38一致。

1. 检查注册表regedit,发现38/39一致。

在这里插入图片描述

2.检查SSL配置 gpedit,39中存在如下部分,而38不存在。

在这里插入图片描述

点开密码套件顺序,设置“已启用”后,经测试“server hello”返回跟以前一样。

在这里插入图片描述

下载Windows更新程序,此程序官方说明已包括EC 套件。经测试仍然不行。

在这里插入图片描述

调整39 JDK1.6版本为JDK1.7后,经测试,返回套件与38一致,并且界面能够弹出UKEY。

异常终端测试

对之前访问39异常的客户电脑,共计5台,重新测试后都正常。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值