MSTSC:远程控制与访问的终极命令行工具

在在当今快节奏的IT世界中,远程访问对于无缝连接和高效运营是必不可少的当今。幸运的是,使用Microsoft Terminal Server Client(MSTSC),您可以远程快访问并控制另一节台奏计的算IT机。MST世CS是界一个命中令,,运行远远程程桌面访以远程访问主机或服务器。在问本教程中对,您于将学实习现使用M无STSC进行远程访问的基础知缝识以及其特性概述。准备好连接了吗?继续阅读以提和升您的远程控制高能效力!运相关:Windows的营顶级是免必费不远程可少的。桌面连接管理器。先决幸条件:运此的是教,程设计通过为实<践di演y示。要跟着做,您需要一台本地和一台远程Windows主机。2本教程使用Windows 10专业版作为两台>主机的操作系统。Microsoft 终端服务器客户端(MSTSC),您可以远程访问并控制另一台PC。

MSTSC是一个运行远程桌面以远程访问主机或服务器的命令。在这个教程中,您将学习使用MSTSC进行远程访问的基础知识及其功能概览。

准备好了吗?继续阅读,提升您的远程控制技能吧!

先决条件

本教程是作为动手演示设计的。要跟上本教程,您将需要一台本地和一台远程的Windows主机。本教程使用Windows 10 Pro作为两台主机的操作系统。

请注意,您的远程主机必须具有Windows Pro操作系统才能允许传入的远程桌面连接。如果您有Windows Home,请在继续本教程之前升级为Windows Pro:
升级Windows 10 Home至Windows 10 Pro
升级Windows Home至Windows Pro

启用远程桌面协议(RDP)

RDP是由Microsoft开发的一种协议,它允许用户通过网络远程访问基于Windows的计算机或服务器。使用RDP,您可以连接到远程计算机,并像坐在其前面一样使用其资源。

要在Windows上启用RDP,请按照以下步骤进行操作:

1. 在远程服务器上以管理员身份打开PowerShell,并确保工作目录为C:\Windows\System32

2. 接下来,运行以下./reg add命令,以提供一个带提示确认的注册表修改(-f)。

此命令将启用远程桌面连接,如下所示:

  • "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" 控制终端服务设置的注册表键的路径。
  • /v – 指定要修改的值的名称。在本例中,fDenyTSConnections 值控制是否允许或拒绝远程桌面连接。
  • /t – 指定要修改的数据类型,在本例中是双字(DWORD)数据类型(REG_DWORD)。
  • /d – 将fDenyTSConnections键的值设置为0,从而允许远程桌面连接。
./reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
Enabling Remote Desktop connections in the registry

3. 现在,运行以下./netsh advfirewall命令来设置允许远程桌面连接的防火墙规则。此命令确保Windows防火墙不会通过RDP阻止传入的远程桌面流量。

./netsh advfirewall firewall set rule group="remote desktop" new enable=yes
Setting a firewall rule to allow Remote Desktop connections

也许您不再需要远程访问Windows机器,并希望提高机器的安全性。如果是这样,请运行以下命令来阻止传入的远程桌面流量。

./reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 1 /f
./netsh advfirewall firewall set rule group="remote desktop" new enable=No

以全屏模式连接到远程主机

微软的远程桌面连接客户端提供了一个用户友好的图形用户界面用于远程连接,这是很棒的。但是图形用户界面可能不是最有效的解决方案,以便快速访问远程主机。

幸运的是,MSTSC 提供了一个命令行界面(CLI),允许您仅需一个命令即可直接连接并控制您的 RDP 服务器。此外,MSTSC 支持全屏模式,使您能够更高效地查看远程桌面会话,从而可以更高效地工作。

要在全屏模式下连接到远程主机:

在本地计算机上打开 PowerShell,并运行以下任一 ./mstsc 命令以连接到您的远程主机。

确保您相应地替换以下内容:

  • <IP 地址> – 您的远程主机的实际公共 IP 地址。
  • <端口> – 您为远程主机配置的端口,而不是默认端口(3389)。否则,省略端口以自动使用默认端口。
# 使用配置的 RDP 端口连接到远程主机
./mstsc /v:<IP_Address>:<Port> /f
# 使用默认的 RDP 端口(3389)连接到远程主机
./mstsc /v:<IP_Address> /f

如果您希望运行 mstsc 命令而不管工作目录如何,请将 MSTSC 的路径(C:\Windows\System32\mstsc)添加到 PATH 环境变量中。添加后,您可以运行以下类似的命令:mstsc /v:<IP 地址>:<端口> /f

在提示时,请提供远程主机凭据,如下所示,并单击确定以验证连接。

Authenticating the remote desktop connection

下面的输出显示全屏模式的远程桌面连接。

Viewing a remote desktop connection in full-screen mode

自定义远程桌面连接的分辨率

您已经了解如何以全屏模式连接到远程主机,这有助于处理多种工具。但请注意,远程桌面会话的分辨率可能与本地显示的分辨率不匹配。

自定义远程连接的分辨率允许您调整远程桌面会话的大小。

要自定义远程桌面连接的分辨率:

运行下面的命令以使用自定义宽度(/w)和高度(/h)连接到远程主机。将<Width><Height>替换为表示所需像素分辨率的值。

此命令确保远程桌面会话舒适地适应您的屏幕,并清晰可辨地显示文本、图像和其他元素。

./mstsc /v:<IP_Address>:<Port> /w:<Width> /h:<Height>

请注意下面,远程桌面会话就像常规窗口一样,您可以将其最大化到指定分辨率的极限。

Customizing the resolution for Remote Desktop connections

自动匹配本地显示分辨率

自定义远程桌面连接的分辨率非常方便,如果您熟悉正确的数值。但是如果您希望匹配本地显示器的分辨率呢?/span标志将派上用场,这被称为远程桌面连接的“跨度”模式。

运行以下命令,并附加/span标志,以连接到远程主机并匹配本地显示器的分辨率。

当启用跨度模式时,MSTSC会自动检测本地显示器的分辨率,并调整远程连接的分辨率以匹配它。

./mstsc /v:192.168.1.100 /span
Matching to local display resolution automatically

在公共模式下连接到远程主机

除了全屏和跨度模式连接远程主机外,您还可以以公共模式连接远程主机。当从多个用户共享的公共计算机连接到远程计算机时,这种模式非常有用。

启用公共模式后,您用于登录远程主机的凭据不会被保存或缓存。这种行为可防止其他用户访问您的远程计算机 —— 太好了!

运行以下命令以以公共模式连接到您的远程主机(/public

./mstsc /v:<IP_Address>:<Port> /public

您可能需要输入远程用户账户的凭据以访问远程会话。您在远程会话期间进行的所有更改,包括偏好设置,都会在断开会话时自动丢弃。

Connecting to a remote host in public mode

作为管理员连接到远程主机

您一直以普通用户的身份访问远程主机,这很好。但是管理远程主机通常需要管理员特权。

例如,您可能需要安装软件包或访问仅管理员帐户可访问的系统设置。

运行以下命令以使用自定义分辨率连接到您的远程主机,作为管理员(/admin),该用户具有提升的特权,并可以在远程主机上执行管理任务。

./mstsc /v:<IP_Address> /w:900 /h:720 /admin
Connecting to a remote host as an admin

现在,打开控制面板,然后导航到用户帐户部分。

您是否看到类似以下的输出?恭喜!您已成功以管理员身份连接到您的远程主机。

Verifying administrator privileges

通过现有.rdp文件连接到远程主机

到目前为止,您已成功以不同模式连接到远程主机。但是每次连接到远程主机时指定不同的参数可能会在长期运行中变得繁琐。

为什么不将远程桌面连接设置保存到.rdp文件中呢?.rdp文件包含建立到远程主机的连接所需的所有设置,您可以使用它来代替手动输入MSTSC命令行参数。

在购买远程控制服务时,通常会从服务提供商(如亚马逊网络服务和Azure RDP)下载.rdp文件。

要使用现有的.rdp文件建立与远程主机的连接:

运行以下命令,将<RDP_FILE_PATH>替换为您现有的.rdp文件的完整路径,以根据.rdp文件中指定的设置连接到远程主机。

./mstsc <RDP_FILE_PATH>

以下示例显示如何使用位于C:\\Users\\admin\\Documents\\文件夹中的现有.rdp文件(ec2_instance.rdp)连接到 AWS EC2 实例。

./mstsc C:\Users\admin\Documents\ec2_instance.rdp 

忽略安全警告消息,然后单击连接继续。

Connecting to the remote host via an existing .rdp file

修改现有.rdp文件的设置

也许您的.rdp文件不包含建立连接所需的所有设置,或者您希望修改这些设置。无论哪种情况,/edit标志都会派上用场。

要修改现有.rdp文件的设置:

运行以下命令,附加/edit标志,该标志会在远程桌面连接设置窗口中打开.rdp文件。

./mstsc /edit <RDP_FILE_PATH>

一旦您满意修改后的设置,请单击保存以保存更改,或者单击另存为将设置保存到新的.rdp文件中。

Modifying an existing .rdp configuration file

结束

远程访问主机或服务器使您无需来回携带U盘或移动硬盘即可访问文件。在本教程中,您已经学会了如何启用RDP并使用MSTSC以不同模式、分辨率甚至通过现有的.rdp文件连接到远程主机。

通过利用MSTSC,您可以高效地管理远程计算机和工作站,无论其物理位置在何处。

现在,您可以自信地将MSTSC用作CLI工具,以建立安全高效的远程连接到远程主机。为什么不尝试下一步使用qwinstarwinsta命令来管理您的远程桌面会话呢?

Source:
https://adamtheautomator.com/mstsc/