解决方法:远程连接Windows系统的ECS实例时提示协议错误

2023-10-06 20:34:53 百科 悟空
  导致远程连接Windows系统的ECS实例时提示协议错误问题的原因:
  原因一
  目标实例的远程会话配置错误。当远程会话配置错误,远程连接时会出现协议错误的提示。
  原因二

  目标实例的远程连接端口被其他应用占用。Windows系统默认远程桌面连接端口号为3389,当该端口被其他程序占用时,远程连接服务将无法正常运行。


  解决方案
  不同问题原因对应的解决方案不同,您可以根据现场实际情况选择对应的问题原因及解决方案。
  原因一:目标实例的远程会话配置错误
  处理步骤如下:
  1.使用VNC登录Windows实例。
  2.单击开始,输入gpedit.msc。单击Enter按钮,打开本地组策略编辑器。
  3.在本地组策略编辑器窗口中,依次单击计算机配置>管理模板>Windows 组件>远程桌面服务>远程桌面会话主机>安全计算机配置。

  4.在安全目录中,双击远程(RDP)连接要求使用指定的安全层。


  5.选择已启用 ,在安全层选项中选择RDP,单击确定。


  6.单击开始,输入cmd,单击Enter按钮,打开命令行。

  7.执行以下命令,完成策略更新,使以上的设置生效。

gpupdate

  系统显示如下图,计算机策略更新完成。


  8.重试远程连接,确认问题已经修复。


  原因二:目标实例的远程连接端口被其他应用占用
  如果目标实例的远程连接端口被其他应用占用,您可以从下列两种解决方案中选择其一。
  方案一:修改远程连接端口号
  参考下列步骤,修改远程连接的端口号,然后使用新的端口号重试远程连接:
  1.使用VNC登录Windows实例。
  2.单击开始,输入regedit,单击Enter按钮,打开注册表编辑器。

  3.依次进入以下目录

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

  4.双击RDP-Tcp目录中名称为PortNumber的注册表项。


 

 5.在编辑页面,选择基数选项中的十进制,修改数值数据中的值,该值即为远程桌面使用的端口号。


  6.重启Windows系统或重启该ECS实例。


  方案二:关闭占用远程连接端口的应用进程
  参考下列步骤,关闭正在占用远程连接端口的应用进程,以释放端口号,然后重试远程连接:
  1.使用VNC登录Windows实例。
  2.单击开始,输入cmd,单击Enter按钮,打开命令行。

  3.执行以下命令,获取占用远程连接端口的进程号(PID)。

netstat -ano |findstr 3389

  4.执行以下命令,根据PID查看进程对应的应用程序。正常情况下,远程连接端口被svchost.exe进程占用。

tasklist |findstr [$PID]

  5.如果远程连接端口被svchost.exe之外的进程占用,则表明远程连接端口的确被其他应用所占用。您可以执行以下命令,根据PID关闭指定的进程,释放被占用的远程连接端口。

taskkill /f /pid [$PID]

发表评论: