在 Linux 上远程连接 Windows,我们可以使用 xfreerdprdesktop 这两种命令。其中,推荐使用 xfreerdp,因为 xfreerdp 支持网络级别身份验证,而且该选项是连接许多 Windows 服务器的必须条件。

使用 xfreerdp 连接 Windows

通过 xfreerdp 连接 Windows 无需在 Windows 上做特别设置。仅需在 Linux 上安装 freerdp 包即可。

# Ubuntu
sudo apt install freerdp2-x11

# Arch Linux
sudo pacman -S freerdp

随后,使用如下命令连接 Windows 即可:

xfreerdp /v:1.2.3.4 /u:Administrator /p:PASSWORD
  • /v 参数指定服务器的 IP 或域名;
  • /u 参数指定连接所用的用户名;
  • /p 参数指定连接所用的密码,如不指定,则会在连接时提示用户输入。

  • 如需指定桌面大小,可以使用参数如: /w:1920 /h:1080
  • 如需全屏连接,添加参数: /f

连接远程桌面后,可以通过 Ctrl + Alt + Enter 切换全屏/窗口显示。

其他一些常用的选项包括 /multimon (多显示器支持), +drives (将本地挂载的磁盘共享到远程桌面), +compression (启用压缩), +fonts (平滑字体), +aero (Aero特效), +window-drag (拖动窗口时显示窗口内容), +menu-anims (菜单动画)。

更多命令行参数,请参考CommandLineInterface · FreeRDP/FreeRDP Wiki

使用 rdesktop 连接 Windows

配置 Windows

首先,Win + R 运行 systempropertiesremote,配置远程桌面允许远程连接到此计算机,并取消选择仅允许运行使用网络级别身份验证的远程桌面的计算机连接(我们接下来所用的远程连接的工具 rdesktop 暂不支持该选项)。

远程桌面配置

随后,点击选择用户,确认当前用户有访问权,若没有,则需添加该用户。

远程桌面 - 添加用户

另外,如果 Windows 机器所处网络有防火墙限制,则需配置开放 TCP/3389 端口。

配置 Linux

安装 rdesktop

# Ubuntu
sudo apt install rdesktop

# Arch Linux
sudo pacman -S rdesktop

命令连接 Windows

rdesktop "服务器 IP 或域名" -g "分辨率" -x "图像配置"
  • 分辨率的格式为 宽x高,如 1920x1080

  • 图像配置有如下选项:

    选项 说明
    l
    lan
    最高图像质量,适用于局域网连接
    b
    broadband
    中等图像质量,适用于普通网络连接
    m
    modem 28.8
    最低图像质量,适用于低速连接
    0x80 最高图像质量,外加平滑字体
    0x81 中等图像质量,外加平滑字体
    0x8F 最低图像质量,外加平滑字体
  • 如需同步 NumLock 状态,可使用 -N 选项;

  • 如需全屏启动远程连接,可使用 -f 选项。

具体例子如:

rdesktop 192.168.1.100 -g 1920x1080 -N -x 0x80

常见问题

  • xfreerdp +fonts 或者 rdesktop -x 0x80 并未启用平滑字体:

    启用平滑字体,不仅需要在 rdp 客户端进行配置,也需要在服务器上启用 ClearType。

    ClearType Text Tuner

参考