本文主要介绍无法远程连接Windows实例的处理方法。
无法远程连接Windows实例的原因较多,请您根据实际情况,通过相应的排查方法,排查并解决无法远程连接Windows实例的问题。
快速登录Windows实例
如果您遇到紧急情况,需要尽快登录Windows实例,请参见以下操作步骤,先检查ECS实例的状态,然后通过云助手向Windows实例发送命令或通过VNC登录实例,具体步骤如下:
步骤一:检查ECS实例状态
无论何种原因导致无法远程登录ECS实例,请先检查实例的状态。只有当ECS实例为 运行中 状态时,才能对外提供业务访问。检查步骤如下:
-
登录 ECS管理控制台 。
-
在左侧导航栏,选择 实例与镜像 > 实例 。
步骤二:通过VNC登录ECS实例
如果云助手无法使用或者无法满足您的使用需求,您还可以通过阿里云VNC工具进行远程登录,使用方法如下:
-
登录 ECS管理控制台 。
-
在左侧导航栏,选择 实例与镜像 > 实例 。
-
在弹出的 远程连接 对话框中,单击 展开其他登录方式 ,然后单击 通过VNC远程连接 对应的 立即登录 。
-
登录实例操作系统。
-
在页面左上角,单击 。
-
选择用户账户,输入实例登录密码,然后按Enter键。
说明Windows实例默认账户为Administrator。
-
步骤三:通过云助手向Windows实例发送命令
您可以尝试通过阿里云云助手向Windows实例发送命令,云助手的使用步骤如下:
-
登录 ECS管理控制台 。
-
在左侧导航栏,选择 实例与镜像 > 实例 。
没有明确的报错信息
在远程连接失败时,如果您没有收到系统返回的报错信息,并且ECS实例是 运行中 的状态,然后再根据以下步骤进行排查:
步骤一:使用阿里云Workbench工具测试远程登录
通过阿里云提供的Workbench工具进行远程登录,Workbench工具在远程登录出现异常时会返回具体的错误信息及解决方案。测试步骤如下:
-
登录 ECS管理控制台 。
-
在左侧导航栏,选择 实例与镜像 > 实例 。
-
在弹出的 远程 与命令 对话框中,单击 Workbench远程连接 对应的 立即登录 。
-
Workbench工具将自动填充登录目标实例所需的基本信息,请确认基本信息的正确性并输入登录的用户名和认证信息。并根据以下结果进行处理:
-
如仍然无法登录,Workbench工具会返回错误提示和解决方案,请根据系统提示进行处理。处理完毕后重新使用Workbench工具进行远程登录测试。为了便于您解决问题,以下列举Workbench工具使用时常见的异常问题: Workbench远程连接问题(Windows) 。
-
如可以通过Workbench工具正常登录,但无法通过本地服务器远程登录,说明远程连接的端口及服务正常,您可以自行排查。
-
步骤二:检查是否有收到黑洞通知
请检查是否有收到黑洞通知,黑洞期间无法支持公网访问服务器。更多信息,请参见 阿里云黑洞策略 。
步骤三:检查端口及安全组
检查安全组规则是否有限制,具体操作如下:
-
登录 ECS管理控制台 。
-
在顶部菜单栏左上角处,选择地域。
-
在 实例列表 页面,单击对应的实例ID。
-
在 实例详情 页面,单击 安全组 页签,在 安全组列表 区域,单击 操作 列的 管理规则 。
-
选择安全组规则方向。
-
在 安全组规则 页面,您可以选择以下任意一种方式添加安全组规则,具体操作,请参见 添加安全组规则 。
-
方式一:快速添加安全组规则
-
授权策略 : 允许
-
端口范围 : RDP(3389)
-
授权对象 : 0.0.0.0/0(代表所有IP访问)
-
-
方式二:手动添加安全组规则
-
授权策略 : 允许
-
优先级 : 1(代表安全规则中优先级最高,数字越小优先级越高)
-
协议类型 : 自定义(TCP)
-
端口范围 : 如果自定义远程端口为33899,则设置为33899
-
授权对象 : 0.0.0.0/0(代表所有IP访问)
-
-
-
通过
IP:端口的方式进行远程桌面连接。连接方式类似如下。
-
使用以下命令,进行端口测试,判断端口是否正常。
telnet [$IP] [$Port]说明-
[$IP]指Windows实例的IP地址。
-
[$Port]指Windows实例的RDP端口号。
系统显示类似如下,比如执行
telnet 192.168.0.1 4389命令,正常情况下返回结果类似如下。Trying 192.168.0.1 ... Connected to 192.168.0.1 4389. Escape character is '^]'如果端口测试失败,请参见 使用ping命令正常但端口不通时的端口可用性探测说明 进行排查。
-
步骤四:本地公网IP被云安全中心拦截
如果在一个本地客户端网络连接ECS服务器时多次输入错误的登录信息,会导致此IP远程登录ECS的请求被拦截。您可以在云安全中心的 设置 中,添加本地IP至白名单,这样就不会对本地IP远程登录此服务器进行拦截,具体操作如下:
步骤五:检查防火墙配置
只有在已授权可关闭防火墙的情况下,才能进行该项排查。请确认防火墙是否已关闭,如果没有关闭,则通过调整防火墙配置策略修复,具体操作,请参见 如何配置Windows实例远程连接的防火墙 。
-
使用VNC方式登录Windows实例。
具体操作,请参见 通过密码认证登录Windows实例 。
-
在菜单栏选择 开始>控制面板 。
-
查看方式 选择 小图标 ,单击 Windows 防火墙 。
-
在 Windows防火墙 界面,单击 高级设置 。
-
启用防火墙配置。
-
在 高级安全 Windows 防火墙 , 单击 Windows防火墙属性 。
-
选择 启用(推荐) ,单击 应 用( A) 。
建议将 域配置文件 、 专用配置文件 、 公用配置文件 选项卡下的防火墙全部启用。
-
-
在 高级安全 Windows 防火墙 ,单击 入站规则 ,在右侧拉至最下方,右键单击 远程桌面-用户模 式( TCP-In) ,选择 启动规则(E) 。
更多关于防火墙的设置信息,请参见 设置Windows实例远程连接防火墙 。
步骤六:检查远程桌面服务
您可以查看Windows服务器的系统是否开启了远程桌面服务。具体操作如下:
-
使用VNC方式登录Windows实例。
具体操作,请参见 通过密码认证登录Windows实例 。
-
右键单击开始菜单,单击 系统 。
-
在 系统 界面,单击 远程设置 。
-
在 远程桌面 区域,选中 允许远程连接到此 计算 机( L) ,单击 确定 。
-
启动 Remote Desktop Services 服务。
在 开始 菜单中,选择 管理工具>组件服务>服务(本地) ,在右侧的菜单窗口中找到 Remote Desktop Services 服务,检查是否启动,如果没有启动,则需启动。
-
加载远程桌面服务所依赖的驱动和服务。
为了提高系统安全性,有时错误地将远程桌面服务所依赖的某些关键服务禁用,导致远程桌面服务异常。可通过以下操作进行检查。
-
右键单击开始菜单,单击 运行 ,输入
msconfig,单击 确定 。
-
在 系统配置 对话框中,单击 常规 页签,选中 正常 启 动( N) ,单击 确定 。
-
重启ECS实例。
具体操作,请参见 重启实例 。
-
步骤七:检查远程终端服务配置
无法连接Windows实例的远程桌面可能是由于以下远程终端服务的配置异常。
本示例以Windows Server 2008为例,其他Windows Server版本操作类似。
异常一:服务器侧自签名证书损坏
本地客户端如果是Windows 7以上版本的系统,会尝试与云服务器ECS建立TLS连接。若云服务器ECS侧用于TLS连接的自签名证书损坏,则会导致远程连接失败。
-
使用VNC方式登录Windows实例。
具体操作,请参见 通过密码认证登录Windows实例 。
-
选择 开始>管理工具>远程桌面服务>远程桌面会话主机配置 。
-
在连接区域,右键单击 RDP-Tcp ,然后单击 属性 。
-
在 RDP-Tcp属性 窗口,将 安全层 修改成 RDP安全层 ,单击 确定 。
-
在操作区域,单击 禁用连接 ,再单击 启用连接 。
异常二:远程桌面会话主机配置连接被禁用
使用
netstat
命令查询,发现端口未正常监听。
使用VNC方式登录Windows实例后,发现远程桌面RDP连接属性配置文件被禁用,重新启用 RDP-Tcp连接 即可 , 具体操作,请参见 异常一:服务器侧自签名证书损坏 。
异常三:终端服务器角色配置
在使用远程桌面访问Windows实例时,可能会出现如下提示。
这种情况一般是由于在服务器上安装配置了 终端服务器 ,但是没有配置有效的访问授权导致的,可参考以下三种解决方案处理:
-
如果是安装了终端服务器角色导致的,需要登录服务器鼠标右键单击 计算机 ,选择 角色>删除角色服务 。
步骤八:检查网络
无法正常远程连接Windows实例时,需要先检查网络是否正常。
-
使用其他网络环境中(不同网段或不同运营商)的电脑连接对比测试,判断是本地网络问题还是服务器端的问题。
-
如果是本地网络问题或运营商问题,请联系本地IT人员或运营商解决。
-
如果是网卡驱动存在异常,则重新安装。排除本地网络故障后进行下一步检查。
-
-
在本地客户端使用
ping命令测试与实例的网络连通性。-
网络异常时,请参见 网络异常时如何抓取数据包 进行排查。
-
当出现ping丢包或ping不通时,请参见 使用ping命令丢包或不通时的链路测试方法 进行排查。
-
如果出现间歇性丢包,ECS实例的网络一直处于不稳定状态时,请参见 使用ping命令测试ECS实例的IP地址间歇性丢包 进行解决。
-
-
在实例中使用ping命令测试与客户端的连通性,提示 一般故障 错误时,请参见 Windows实例ping外网地址提示“一般故障” 进行解决。
步骤九:检查CPU负载、带宽及内存使用情况
无法正常远程连接Windows实例时,可能是因为CPU负载、带宽不足或内存不足导致。
-
根据是否存在CPU负载过高情况,选择相应操作。
-
不存在CPU负载过高情况,请继续执行步骤2继续排查。
-
如果CPU负载过高情况,请参考本步骤解决问题。
-
检查CPU负载过高时,通过实例详情页面的终端登录实例,检查后台是否正在执行Windows Update操作。若存在Windows Update操作,则CPU负载过高是正常结果,请继续等待执行完成。
-
若应用程序有大量的磁盘访问、网络访问行为、高计算需求,CPU负载过高是正常结果。建议您升配实例规格来解决资源瓶颈问题,具体操作,请参见 升降配方式概述 。
说明CPU负载过高的解决方法,请参见 Windows系统ECS实例的CPU使用率较高的解决方法 。
-
-
-
排查是否存在公网带宽不足问题。
无法远程连接可能是公网带宽不足导致的,具体排查方法如下。
-
排查是否存在内存不足问题。
远程连接Windows实例后,不能正常显示桌面并直接退出,也没有错误信息提示。这种情况可能是服务器内存不足导致,需要检查服务器的内存使用情况。具体操作如下。
-
使用VNC方式登录Windows实例。
具体操作,请参见 通过密码认证登录Windows实例 。
-
选择 开始>管理工具>事件查看器 ,查看是否存在内存资源不足的警告日志信息。具体操作,请参见 Windows 虚拟内存不足问题的处理 。
-
步骤十:检查系统的安全策略设置
您可以查看Windows服务器上是否有阻止远程桌面连接的相关安全策略。具体操作如下。
-
使用VNC方式登录Windows实例。
具体操作,请参见 通过密码认证登录Windows实例 。
-
选择 开始>控制面板>管理工具 ,双击 本地安全策略 。
-
在 本地安全策略 界面中,单击 IP安全策略,在本地计算机 ,根据是否存在相关的安全策略,选择相应操作。
-
存在相关安全策略,删除或重新编辑该安全策略
-
删除安全策略:右键单击相关策略,选择 删 除( D) ,在弹出的对话框,单击 是 。
-
双击打开该IP的安全策略,重新配置以允许远程桌面连接,然后再使用远程桌面连接。
-
-
不存在相关安全策略,执行 步骤十:检查系统的安全策略设置 继续排查。
-
步骤十一:检查杀毒软件
使用远程桌面无法连接ECS实例可能是由于第三方杀毒软件设置导致,可通过以下方法进行解决。此处列举两个安全狗配置导致远程访问失败的解决案例。
-
如果杀毒软件在后台执行,可通过VNC方式登录实例,将杀毒软件升级至最新版本或者直接删除。关于如何使用VNC登录实例,请参见 连接方式概述 。
-
请使用商业版杀毒软件,或者使用Microsoft Safety Scanner微软免费安全工具,在安全模式下扫描杀毒。关于更多安全扫描程序信息,请参见 安全扫描程序 。
案例一:安全狗黑名单拦截
如果安装了安全狗后,出现以下情况,请确认防护软件中是否做了安全设置或对应的拦截。
-
客户端本地无法远程桌面连接Windows实例,但其他区域可以远程连接。
-
无法ping通服务器IP地址,并且通过
tracert命令跟踪路由,发现无法到达服务器。 -
云安全中心未拦截本地公网IP地址。
打开
服务器安全狗
,选择
网络防火墙
,单击
超级
黑白名
单
右侧
的
图标,如果
超级黑名单
中存在ECS实例公网IP,需将此黑名单规则删除,然后将公网IP添加到
超级白名单
。
如果云安全中心的阈值设置过低,则可能拦截实例公网IP。建议把清洗阈值调高,避免出现拦截实例公网IP的情况发生,更多信息,请参见 DDoS基础防护 。
案例二:安全狗程序异常
使用VNC登录到Windows实例后,在系统桌面右下角,安全狗弹出错误提示,系统显示类似如下。
该问题可能是由于安全狗软件出现异常导致,您可以通过Windows系统卸载安全狗软件后,重启ECS实例,即可恢复网络。
步骤十二: Windows注册表配置异常
Windows注册表相关配置异常,可能导致RDP连接被阻断,您可以参考以下步骤来修复。
-
使用VNC连接ECS实例。
具体操作,请参见 使用VNC登录实例 。
-
在 运行 框中输入 regedit ,单击 确定 ,打开注册表编辑器。
-
在注册表编辑器中,分别修改以下参数配置。
-
将
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp中的fEnableWinStation参数值修改为1。
-
将
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server中的fDenyTSConnections参数值修改为0。
-
步骤十三: Windows RDP自签证书到期
RDP自签证书过期,可能会导致无法远程登录,您可以参考以下步骤来修复。
-
使用VNC方式登录Windows实例。
具体操作,请参见通过密码认证登录Windows实例。
-
以管理员身份运行Windows PowerShell。
-
在Windows PowerShell对话框,执行如下命令。
Remove-Item -Path 'Cert:\LocalMachine\Remote Desktop\*' -Force -ErrorAction SilentlyContinue Restart-Service TermService -Force
存在明确的报错信息
-
授权相关:
-
桌面无法显示:
-
连接数相关:
-
用户名和密码相关:
> 远程连接 > 发送命令
。