云主机无法远程桌面故障原因分析及解决办法

2023-01-26 20:43闽北职业技术学院吴碧霞
内江科技 2022年6期
关键词:实例端口防火墙

◇闽北职业技术学院 吴碧霞

云主机具有扩展性好、安全可靠、性价比高等优点,被越来越多的中小企业利用云主机来快速搭建系统业务环境,网络管理员经常通过远程桌面功能操作云主机计算机,在上面安装软件,运行程序,在实际应用中有时会发现无法正常远程桌面登录,该现象涉及云侧和客户操作系统内多种原因。本文针对云主机无法通过远程桌面连接各种问题和原因进行多维度定位分析,形成相关解决办法思路,可以在故障处理中快速应用,提升故障处置效率。

云主机是阿里云、天翼云、百度云等新一代的云业务运营商提供的主机租用服务,云业务运营商将高性能服务器的计算、存储与优质网络带宽资源的IT基础设施能力进行整合,有效解决了传统主机建设运营成本偏高导致租用价格偏高、专业化标准不一、服务品质参差不齐等缺点,具有扩展性好、安全可靠、性价比高等优点,可全面满足中小企业、个人站长等用户对主机租用服务低租用成本,高可靠性能,业务方便管理的需求,能提供基于云计算模式的按实际需求使用量和按业务需求量付费能力的服务器租用服务,被越来越多的中小企业用来快速搭建系统业务环境。云主机客户的网络管理员经常使用远程桌面来操作本地计算机或服务器,在上面安装软件、运行程序、管理维护数据库等。远程桌面功能是微软公司推出的从windows 2000 server版本开始引入一项服务,网络管理员使用远程桌面功能连接程序可以很方便地连接到网络上任意一台开启了远程桌面控制功能的计算机上,和自己现场操作该计算机没有区别。云主机客户的网络管理员对云主机也需要同样的功能,在实际应用中有时会发现无法正常远程桌面登录,该现象涉及云侧和客户操作系统内多种原因,本文对此进行多维度定位分析,并提出相应的解决办法。

1 分析过程主要步骤

(1)首先通过VNC登录查看服务器状态是否正常,如不正常可联系云公司进一步排查,如正常进行下一步。

(2)检查安全组是否添加远程服务端口,windows默认远程端口为3389,如未添加,可添加后重试,如已添加,进行下一步。

(3)在本地测试是否可以远程,如可以远程连接,则需客户排查客户端问题,如无法远程连接,进行下一步。

(4)vnc登录查看服务器内部远程服务是否开启,端口是否修改,防火墙是否开启,是否存在安全软件、安全狗、360等。

2 故障问题原因和相应解决措施

2.1 没有开启远程桌面服务

通过以下步骤操作查看Windows服务器的系统是否开启了远程桌面服务:①使用控制台远程连接功能登录到Windows实例;②右键单击我的电脑,选择属性>高级系统设置。在系统属性窗口,选择点击远程选项卡,查看允许运行任意版本远程桌面的计算机连接是否勾选,如没有勾选点击勾选即可。

2.2 Windows Server 2012初次登录开启防火墙会断开

新购的Windows 2012实例,首次连接服务器正常。连接服务器并激活系统后,会提示是否要在此网络上查找电脑等设备并自动连接,用户此时如果单击否,服务器就会自动开启公网的防火墙,导致连接直接断开。可尝试通过以下步骤解决:

(1)使用控制台远程连接功能登录到Windows实例。

(2)在菜单栏选择开始→控制面板→Windows 防火墙。

(3)在Windows 防火墙窗口,单击高级设置→入站规则,在右侧拉至最下方,右键单击远程桌面-用户模式(TCP-In),选择启动规则。

(4)返回上一个页面,单击Windows 防火墙属性,选择启用(推荐),单击应用。注意将域配置文件、专用配置文件、公用配置文件选项卡下的全部防火墙都启用。

2.3 系统服务被禁用

为了提高系统安全性,用户错误的将远程桌面服务所依赖的某些关键服务禁用,从而导致远程桌面服务异常。解决方法步骤如下:

(1)使用控制台远程连接功能登录到Windows实例。

(2)选择开始→运行。输入msconfig,单击确定运行系统配置。

(3)在系统配置的窗口中,选择常规选项卡,选择正常启动,然后重启服务器,即可解决。

2.4 本地网络受限

要判断是本地网络问题还是服务器端的网络问题,可以通过ping和telnet命令,检查服务器公网IP及3389端口的连通性来判定,同时可以用不同网段或不同运营商等其他网络环境中的电脑连接来对比测试,以判断是否为本地网络受限。

2.5 远程端口被修改

ECS的安全组规则中默认放行3389端口,如果修改了远程桌面的端口,则需要在安全组规则中放行修改后的相应端口号,登录方式改变或者ECS安全组规则中未放行修改后的端口号,会导致无法连接Windows实例远程桌面。

2.6 终端服务器角色未配置授权

终端服务器角色未配置授权导致无法正常远程连接的原因可能有以下两种:

(1)Windows服务器正常情况下默认提供两个用户的免费远程桌面管理授权,由于终端服务配置了RDP-TCP限制每个用户只能进行一个会话,该账号有其他人在登录,所以其他会话无法建立。如果有更多的连接需求,则需要配置远程桌面会话主机服务器角色,同时购买和配置相应的授权后,才可以使用更多的远程桌面管理并发。

(2)在系统内安装了远程桌面会话主机角色,此功能免费试用120天,之后需要进行付费,如果没有付费会造成无法通过管理终端连接。在配置远程桌面会话主机角色后,会同时取消默认两个用户的免费连接授权,在没有正确配置相关授权的时候,会导致远程桌面无法连接,并出现错误提示。

根据上述两种实际情况,可参考以下两种解决方法。

一是取消RDP-TCP限制每个用户只能进行一个会话,具体操作步骤如下:①通过管理终端连接Windows实例。②选择开始→运行,在打开框中输入gpedit.msc,单击确定,运行组策略编辑器。③进入本地组策略编辑器页面,选择计算机配置→管理模板→Windows 组件,双击远程桌面服务。④双击远程桌面会话主机→连接。⑤单击限制连接的数量,在弹出的窗口中,选择已启用,在允许RD 最大连接数框中,输入需要的最大连接数,单击确定。⑥选择开始→运行,在打开框中输入cmd,打开命令行,执行命令gpupdate。

二是安装远程桌面会话主机导致无法远程Windows服务器,请参考如下两种解决方法:

方法一:配置远程桌面会话主机服务器后,在微软官网购买和配置相应的证书授权,参阅微软官方文档相关方法操作。

方法二:删除远程桌面会话主机角色,参考以下步骤对不同版本的Windows服务器进行配置,使用默认两个用户的免费连接授权。

Windows 2012操作系统:①通过管理终端连接Windows实例。②选择开始→运行,在打开框中输入servermanager.msc,单击确定。③进入服务器管理器页面,选择管理→删除角色和功能。④进入删除功能和角色页面→下一步→下一步。⑤在角色框中,取消勾选远程桌面服务,其它配置默认,单击下一步。⑥在实例内重启。

Windows 2008操作系统:①通过管理终端连接Windows实例。②选择开始→运行,在打开框中输入servermanager.msc,单击确定。③进入服务器管理页面→角色,右键单击远程桌面服务,选择删除角色服务。④在弹出窗口中,取消勾选远程桌面会话主机→下一步,等待配置完成。⑤在实例内重启该实例。

2.7 远程端口设置超出范围

无论是Windows实例还是Linux实例,错误配置监听端口会导致远程桌面服务监听失败,将端口重新修改为0~65535之间未被占用的端口即可解决,修改端口的具体操作方法如下:

(1)远程连接并登录到Windows 实例。

(2)运行regedit.exe打开注册表编辑器。

(3)找到如下注册表子项:HKEY_LOCAL_MACHINESystemCurrentControlSetControlTerminal ServerWinStationsRDP-TcpPortNumber。

(4)在弹出的对话框中选择十进制,在数值数据中输入新的远程端口号,如3799,单击确定。

(5)如果开启了防火墙,还需要将新的端口号添加到防火墙,并设置允许连接。

(6)登录管理控制台,重启该实例。

(7)在安全组列表页面,找到相应的安全组,单击配置规则。

(8)根据实际的使用场景来定义安全规则,在安全组规则页面,单击添加安全组规则,允许新配置的远程端口进行连接。

(9)以上步骤完成后,在远程地址后面添加新远程端口号,例如192.168.1.2:3799,即可连接实例,远程访问服务器。

2.8 远程终端服务配置异常

由于以下两种远程终端服务的配置异常可能导致无法连接Windows实例远程桌面:

异常1:服务器侧自签名证书损坏。客户端如果是Windows 7以上版本的系统,会尝试与服务器建立TLS连接。若服务器侧用于TLS连接的自签名证书损坏,则会导致远程连接失败。

解决该异常步骤:

(1)使用控制台远程连接功能登录到Windows实例。

(2)选择开始→管理工具→远程桌面服务,然后双击打开远程桌面会话主机配置

(3)选择RDP-Tcp。在RDP-Tcp属性窗口将安全层修改成RDP安全层。

(4)在操作栏先禁用连接,再启用连接即可。

异常2:远程桌面会话主机配置连接被禁用。使用netstat命令查询,发现端口未正常监听。使用控制台远程连接功能登录到Windows实例后,发现远程桌面RDP连接属性配置文件被禁用。解决方法参考服务器侧自签名证书损坏找到RDP连接属性配置文件,如果RDP-Tcp被禁用,单击启用连接即可。

2.9 系统的安全策略设置

可以查看Windows服务器上是否有阻止远程桌面连接的相关安全策略。具体操作步骤如下:

(1)使用控制台远程连接功能登录到Windows实例。

(2)选择开始→控制面板→管理工具,双击本地安全策略。

(3)在弹出的窗口中,单击IP 安全策略,查看是否有相关的安全策略。

(4)如果有,右键单击相关策略,选择删除,或双击该IP的安全策略来重新配置以允许远程桌面连接,然后使用再远程桌面连接。

2.10 杀毒软件导致

无法连接远程桌面可能是由于第三方杀毒软件设置导致。此处列举两个安全狗配置导致远程访问失败的案例。

案例1:安全狗程序异常。

使用控制台远程连接功能登录到Windows实例后,安全狗软件出现异常,在系统桌面右下角弹出错误提示。通过Windows系统卸载安全狗软件后,重启服务器,网络即可恢复。

案例2:安全狗黑名单拦截。

异常情况:客户端本地无法远程桌面连接Windows实例,但其他区域可以远程连接。无法PING通服务器IP地址,且通过tracert命令跟踪路由,发现无法到达服务器。云盾未拦截本地公网IP地址。

如果安装了安全狗后,出现如上情况,需检查防护软件中是否做了对应的拦截或安全设置。可以打开服务器安全狗,选择网络防火墙。单击超级黑名单的规则设置,如果黑名单中存在实例公网IP,则将此黑名单规则删除,然后将公网IP添加到超级白名单。

2.11 服务器内存不足

远程连接输入用户密码登录后,不能正常显示桌面直接退出,也没有错误信息。这种情况可能是服务器内存不足导致的,需要查看一下服务器的内存使用情况。具体操作如下。

(1)使用控制台远程连接功能登录到Windows实例。

(2)选择开始→控制面板→管理工具,打开事件查看器。查看一下是否有内存资源不足的警告日志信息。

出现操作系统虚拟内存不足,有两种方法检查方法:

方法1:检查系统日志。打开事件查看器(运行→eventvwr),在系统日志中发现” Resource-Exhaustion-Detector”报出的2004错误。

方法2:检查任务管理器。

任务管理器中发现检查已提交内存与虚拟内存的比例。%Commited Bytes In Use 等于已提交虚拟内存/虚拟内存上限,如果超过80%,而根据微软官方说明,请尝试如下方案:

方案1:由于默认ECS没有配置Paging File,可以手工配置paging file,按照如下步骤进行。

参考以下步骤,在Windows系统中配置虚拟内存:

(1)远程连接登录到Windows实例,如果使用软件无法登录Windows实例,可以使用ECS控制台的管理终端登录实例。

(2)右击计算机(或这台电脑),单击属性→高级系统设置。

(3)在弹出的窗口中,单击高级,在性能区域,单击设置。

(4)在弹出的窗口中,单击高级,选择后台服务,然后单击更改。

(5)在弹出的窗口中,取消选择自动管理所有驱动器的分页文件大小。

(6)选择虚拟内存文件存放的驱动器,在自定义大小中,输入初始大小与最大值。建议不要选择系统盘来存放虚拟内存,具体根据服务器的硬盘情况来选择。

(7)单击设置,然后单击确定完成配置。如果云服务器ECS内存资源不足,增加虚拟内存会导致磁盘I/O性能下降,建议通过升级实例规格解决,如升级CPU和内存。

方案2:如果配置Paging File后,仍然出现内存不足情况,有可能是应用程序对内存要求高,需增大实例规格,调高ECS的物理内存,同时相应的增加paging file。

3 结束语

总之,Windows云主机无法远程桌面的原因较多,其中大部分为操作系统设置或者服务异常导致,如系统服务未打开、端口设置错误、网络受限等等,有些故障原因和本地主机相似,有些则和云计算、网络相关,需根据具体故障现象找到原因并解决。本文所列的十一种原因基本涵盖常见的云主机无法远程桌面的故障现象,在日常处理中,可以根据故障现象分类分段,定位故障是在远程服务器系统网络,还是在本地网络、客户机本身,针对不同故障快速处理,可以提升故障处置效率。

猜你喜欢
实例端口防火墙
一种有源二端口网络参数计算方法
一种端口故障的解决方案
全民总动员,筑牢防火墙
多按键情况下,单片机端口不足的解决方法
构建防控金融风险“防火墙”
在舌尖上筑牢抵御“僵尸肉”的防火墙
完形填空Ⅱ
完形填空Ⅰ
卫星三端口DC-DC变换器技术综述
筑起网吧“防火墙”