如何使用命令行诊断 RDP?

如何使用命令行诊断 RDP?

我有一台使用 1and1 的服务器,他们已经放弃尝试恢复 RDP 访问(根本没有尝试),并告诉我重新镜像服务器。由于这是一台生产机器,我想避免这种情况,因为这会导致 FTP 恢复速度缓慢,而且我不确定这是否真的能解决问题。

机器重新启动了,丢失 RDP 连接使用现有凭据。我按照以下指示以管理员身份访问了远程服务器上的命令提示符:http://help.1and1.com/servers-c37684/windows-server-c39510/system-recovery-c76208/resolving-a-failed-connection-to-remote-desktop-a627381.html

现在,我已经终止了防火墙和 ipsec 进程。仍然没有结果。我该如何使用 CMD.exe 来

1)诊断情况(是 Windows 还是网络问题)

2)可能补救 RDP 连接丢失的问题

服务器详细信息:

  • Windows 服务器 2012
  • 网站正在运行(IIS/W3P 正常)
  • 终端服务跑步
  • 防火墙已禁用
  • Ipsec 已禁用
  • 没有网络防火墙(目前在托管控制面板中已禁用)
  • 可以从当前位置 ping 通(重启前工作正常)
  • 不确定内部特定于域的网络设置...

更新:

添加注册表值以确保启用远程连接: http://expertpandas.com/blog/index.php/enabledisable-rdp-using-command-prompt-for-windows-2012/

还发现了这个: 但我不确定如何使用 CMD 设置启动策略... http://www.techrepublic.com/forums/questions/remote-desktop-does-not-connect-after-a-restart/

答案1

通过命令行访问,您可以安装另一个远程控制应用程序,例如 TeamViewer。

更好的方法是安装 Windows 远程服务器管理工​​具并以此方式诊断问题。这些工具可让您访问事件查看器。

如果您决定放弃这台服务器,请先让 1and1 为您设置一台新服务器。然后,您可以将旧服务器的虚拟硬盘连接到新服务器,或者通过 1and1 的内部网络复制文件。

答案2

我将首先检查 RDP 是否正在监听:

netstat /p tcp /a | findstr 3389

如果你没有看到

TCP    0.0.0.0:3389           hostname:0                LISTENING

存在阻止远程会话的问题。请特别查看HKLM\System\CurrentControlSet\Control\Terminal Server\fDenyTSConnections是否启用了 RDP。

# using powershell
if ((Get-ItemProperty "hklm:\System\CurrentControlSet\Control\Terminal Server").fDenyTSConnections -eq 0) { write-host "RDP is Enabled" } else { write-host "RDP is NOT enabled" }

您还可以使用Get-EventLog命令行搜索事件日志:

# using powershell
Get-EventLog application -EntryType Error -After (Get-Date).AddDays(-1)
Get-EventLog system -EntryType Error -After (Get-Date).AddDays(-1)

答案3

telnet 到 rdp 端口​​。如果能连接,则可能是配置问题。首先尝试从另一台机器通过 rdp 连接到服务器。如果失败,1and1 的建议可能是最好的选择。

总是有无头运行服务器的选项...但这似乎不是大多数 Windows 管理员所青睐的方法。(随着核心的引入而改变。)

相关内容