1 概述
本篇文章主要说明在使用 JumpServer 堡垒机连接 Windows 资产时出现的提示错误以及该错误如何解决。
JumpServer 提供三种方式连接 Windows 资产,分别为 WEB GUI、RDP 客户端【企业版】、RDP 文件【企业版】。
JumpServer 正常纳管 Windows 的前提是:该 Windows 服务器的 3389 端口到堡垒机之间的通讯正常,资产的系统平台,协议组都应当配置正确。
2 问题与解决
以下文章会列出 WEB GUI 与 RDP 客户端的方式不同的报错信息以及该如何解决。
2.1 WEB GUI
2.1.1 Credentials expired.
问题现象:
当使用 WEB GUI 方式登录 Windows 资产时,弹窗显示“连接异常 Credentials expired.”。
问题原因:
此问题出现的原因可能是由于资产的系统平台错误或者登录用户的密码错误或者用户授权到期导致。
解决方案:
解决方案一:修改资产的系统平台为 “Windows-TLS” 或者尝试其他 Windows 平台;
解决方案二:使用个人 PC 上的 MSTSC 登录 Windows 资产,更新对应的账户密码,在对应资产的账号列表上更新对应的账户密码;
解决方案三:查看该用户登录该资产的授权规则,确认授权规则是否过期;
2.1.2 用户名和密码认证错误,登录失败
问题现象:
使用 WEB GUI 方式连接 Windows 资产时,弹窗显示“连接异常 用户名和密码认证错误,登录失败”。
问题原因:
此问题出现的原因可能是由于用户名密码输入错误,或者资产的系统平台错误。
解决方案:
解决方案一:检查确认账号的用户名密码是否正确;当使用域账号登录 Windows 资产时,账号格式可参考:username@domain 或者 domain\username;当系统平台中配置了域信息后,账号格式可以只填写 username。
解决方案二:修改资产的系统平台为 “Windows-TLS” 或者尝试其他 Windows 平台;
解决方案三:Windows 2019 的系统登录时使用空账号登录时出现以上报错,可以打开“系统属性→远程→关闭'仅允许允许使用网络级别身份验证的远程桌面的计算机连接‘”。
2.1.3 无法连接到远程桌面服务器(网络不可达|安全策略错误)
问题现象:
使用 WEB GUI 方式连接 Windows 资产时,弹窗显示“连接异常 无法连接到远程桌面服务器(网络不可达|安全策略错误)”。
问题原因:
此问题出现的原因可能是由于网络不通、防火墙原因、安全软件等影响导致堡垒机连接不到 Windows 资产的 3389 端口,堡垒机 ping 不通 Windows 资产。
排查方向:
检查 JumpServer 系统上的该 Windows 资产的系统平台,协议组对应的端口是否正确;
在 JumpServer 平台上使用系统工具 ping/telnet 测试;或者登录 JumpServer 服务器,使用 ping 和 telnet 命令检查资产连通性;
检查该 Windows 资产的防火墙是否限制堡垒机访问;
检查该 Windows 资产的安全组策略;
2.1.4 Aborted. See logs
问题现象:
使用 WEB GUI 方式连接 Windows 资产时,弹窗显示“Aborted. See logs”。
问题原因:
此问题出现的原因并不明确,需要查看 JumpServer 后台服务器的 lion.log 和资产的事件管理器,对该现象出现的原因进行分析。
当阿里云的 Windows 资产开启了短信验证时,通过 JumpServer 访问时也会有这个错误。在此场景下该问题暂无解决方案。
可能的问题:
如果此问题是远程桌面服务到期,需要购买对应的远程桌面服务授权。
如果该问题是安全层协议问题,可以修改 Windows 上的安全层协议,修改路径如下:组策略编辑器(Win+R 输入 gpedit.msc)→计算机配置→管理模板→Windows 组件→远程桌面服务→远程桌面会话主机→安全,修改对应的远程连接协议,默认为未配置状态,修改为已启用,把安全层改为和系统平台保持一致。
2.1.5 Upstream error
问题现象:
使用 WEB GUI 方式连接 Windows 资产时,弹窗显示“连接异常 Upstream error.”。
问题原因:
此问题出现的原因可能是前端有反向代理,未配置会话保持。此情景下可查看 lion 组件的日志。
解决方案:
反向代理配置添加会话保持;
查看该 Windows 资产的远程会话配置,是否开启了身份验证。如若开启,关闭身份验证。
2.1.6 Forcibly disconnected
问题现象:
使用 WEB GUI 方式连接 Windows 资产时,弹窗显示“连接异常 Forcibly disconnected”。
问题原因:
此问题出现的原因可能是资产连接被强制断开。即同时有其他人使用该账号登录该Windows 资产。
解决方案:
每个用户登录 Windows 使用不同的系统用户;
增加资产的连接数。修改路径如下:组策略编辑器(Win+R 输入 gpedit.msc)→计算机配置→管理模板→Windows 组件→远程桌面服务→远程桌面会话主机→连接→限制连接数量(999999)。
禁用远程桌面服务用户限制到单独的远程桌面服务会话。修改路径如下:组策略编辑器(Win+R 输入 gpedit.msc)→计算机配置→管理模板→Windows 组件→远程桌面服务→远程桌面会话主机→连接→将远程桌面服务用户限制到单独的远程桌面服务会话→禁用。
2.1.7 Access denied by server(account locaked/disabled?)
问题现象:
使用 WEB GUI 方式连接 Windows 资产时,弹窗显示“连接异常 Access denied by server (account locked/disabled?)”。
问题原因:
此问题出现的原因可能是登录使用的账号被锁或者密码过期。
解决方案:
使用个人 PC 的 MSTSC 登录测试,解锁账号或者更新账号的密码。
2.1.8 未能找到会话
问题现象:
使用 WEB GUI 方式连接 Windows 资产时,弹窗显示“连接异常 未能找到会话”。
问题原因:
此问题出现的原因可能是 JumpServer 部署多节点架构,通过 LB 代理时,LB 的负载规则为轮询导致。
解决方案:
检查前端负载的规则,Nginx 的负载规则为 ip_hash ;
检查前端负载的规则,阿里云负载开启会话保持;
检查前端负载的规则,AWS 负载开启粘性有效期至少 1 天。
2.1.9 拒绝请求的会话访问
问题现象:
使用 WEB GUI 方式连接 Windows 资产时,弹窗显示“拒绝请求的会话访问”。
问题原因:
此问题出现的原因可能是登录该 Windows 的账号不允许远程登录。
解决方案:
使用个人 PC 的 MSTSC 登录 Windows 资产,将该账号添加进允许远程登录的列表中。修改路径如下:右击我得电脑→属性→高级系统设置→远程。
2.1.10 Core API 发生错误
问题现象:
使用 WEB GUI 方式连接 Windows 资产时,弹窗显示“Core API 发生错误”。
问题原因:
此问题出现的原因可能是 JumpServer 服务后台的 API 接口出现了异常。
排查方向:
查看 jumpserver.log 日志根据实际情况处理;
docker ps 查看组件状态,如若 lion 组件异常也重启 lion 组件,重启命令为:docker restart jms_lion;
查看网络层原因,如果更新了 JumpServer 后台的服务器网络设置,需要重启 docker服务并重启 JumpServer 服务。
2.1.11 远程计算机接收到非预期的服务器身份验证证书
问题现象:
使用 WEB GUI 方式连接 Windows 资产时,弹窗显示“远程计算机接收到非预期的服务器身份验证证书”。
问题原因:
此问题出现的原因可能是通过 https 访问 JumpServer 页面时,负载均衡配置的 SSL 证书与 JumpServer 节点的证书不一致。
解决方案:
修改负载均衡节点的 SSL 证书或者 JumpServer 节点的 SSL 证书,使得负载均衡节点的证书与 JumpServer 节点的证书一致。
2.1.12 502 Bad Gateway
问题现象:
使用 WEB GUI 方式连接 Windows 资产时,弹窗显示“502 Bad Gateway”。
问题原因:
此问题出现的原因可能是组件异常或者 jms_web 中的 Nginx 配置中的 lion 的路由配置错误。
排查方向:
检查 Lion 组件状态是否正常,如若异常可执行 docker restart jms_lion 命令重启 lion 容器;
检查 jms_web 组件中的 Nginx 配置中的 Lion 组件的路由配置是否正确;
2.2 RDP 客户端
2.2.1 由于协议错误,会话连接将断开。请重新连接到远程计算机。
问题现象:
使用 RDP 客户端方式连接 Windows 资产时,弹窗显示“由于协议错误,会话连接将断开。请重新连接到远程计算机”。
问题原因:
此问题出现的原因可能是资产的连接协议与堡垒机默认的不一致。
解决方案:
修改该 Windows 资产的系统平台。
2.2.2 RDP 方式连接无报错直接闪退或者黑屏
问题现象:
使用 RDP 客户端方式连接 Windows 资产时,没有报错弹窗,在拉起 Mstsc 时直接闪退。
问题原因:
该 Windows 资产与 JumpServer 之间的网络不通;
该 Windows 资产的端口信息与堡垒机之前不通;
登录该 Windows 资产的账号/密码不正确;
网关信息不对;
安全层策略未开启,或者安全层协议与系统平台不正确。
排查思路:
使用个人 PC 的 Mstsc 直连资产,判断账号密码是否正确;
使用 Web GUI 方式连接资产,判断网络与端口是否正确;
检查 Razor 的日志,查看(token、网关)是否正确,查看 razor 日志的方法:docker logs -f jms_razor --tail 100;
在 Windows 资产上,打开事件查看器,检查登录失败的原因。
2.3 其他 Windows 连接过程中的问题
2.3.1 文件无法复制粘贴
问题现象:
使用 RDP 方式连接 Windows 资产时,无法使用复制粘贴功能,粘贴文本时无反应。
问题原因:
此问题出现的原因可能是 RDP 剪切进程发生故障,存在僵尸进程。
解决方案:
解决方案:在任务管理器中,结束 RDP 剪切监视进程,重新进行复制粘贴。
解决方案:不影响正常业务的情况下,重启 Windows 服务器。