如果您计划使用 RDP(而不使用 VMware Blast 或 PCoIP)连接远程桌面,可以选择使用远程桌面 (rdesktop) 客户端或 FreeRDP (xfreerdp),即远程桌面协议 (Remote Desktop Protocol, RDP) 的开源实现,在 Apache 许可证下发布。

由于已经不再主动开发 rdesktop 程序,因此 Horizon Client 也可运行 xfreerdp 可执行文件,但前提是您的 Linux 计算机必须安装了所需的 FreeRDP 版本和补丁程序。

使用软件包管理器(如用于 Ubuntu 的 apt 或用于 RHEL yum)在 Linux 计算机上安装最新版本的 xfreerdprdesktop

重要说明: 如果计划连接至 Microsoft RDS 主机上的远程桌面或应用程序(如果该主机配置了每设备许可模式),则必须使用 xfreerdp,或者将许可模式更改为每用户模式。原因是每设备许可模式要求 RDP 客户端提供客户端 ID, rdesktop 不提供该 ID,而 xfreerdp 提供。

常规语法

您可以使用 vmware-view 命令行界面或配置文件中的某些属性指定 xfreerdp 的选项,与指定 rdesktop 的选项一样。

  • 要指定 Horizon Client 应运行 xfreerdp 而不是 rdesktop,请使用相应的命令行选项或配置项。
    命令行选项: --rdpclient="xfreerdp"
    配置项: view.rdpClient="xfreerdp"
  • 要指定转发到 xfreerdp 程序的选项,请使用相应的命令行选项或配置项,并指定 FreeRDP 选项。
    命令行选项: --xfreerdpOptions
    配置项: view.xfreerdpOptions

有关使用 vmware-view 命令行界面和配置文件的更多信息,请参阅使用 vmware-view 命令行界面和配置文件

网络级别身份验证的语法

rdesktop 程序的很多配置选项都与 xfreerdp 程序的相同。但有一项重要区别: xfreerdp 支持网络级身份验证 (Network-Level Authentication, NLA)。默认情况下 NLA 处于关闭状态。您必须使用以下 命令行选项 来启用网络级别身份验证:
--enableNla

此外,还必须添加 /cert-ignore 选项以便证书验证过程成功执行。以下是正确语法示例:

vmware-view --enableNla --rdpclient=xfreerdp --xfreerdpOptions="/p:password /cert-ignore /u:user-name /d:domain-name /v:server"

如果密码包含任意特殊字符,请将特殊字符转义(例如:\$)。

结合使用 FreeRDP 与 Horizon Client 的特定语法

牢记以下指导原则:

  • 必须将可能通常置于引号中的特殊字符进行转义。例如,因为 pa$$word 中的特殊字符 $ 未转义,所以以下命令不起作用:

    (不正确)vmware-view --rdpclient=xfreerdp --xfreerdpOptions="/p:'pa$$word' /u:'crt\administrator'"

    相反,必须使用:

    (正确)vmware-view --rdpclient=xfreerdp --xfreerdpOptions="/p:'pa\$\$word' /u:'crt\administrator'"

  • 如果最终用户将使用 Horizon Client 的会话中会话实施,则您必须使用 /rfx 选项。会话中会话实施的一个示例就是最终用户登录到瘦客户端上的 Horizon Client,以便 Horizon Client 接口是最终用户看到的唯一接口,然后,最终用户启动 Horizon Client 的嵌套版本以便使用 RDS 主机提供的远程应用程序。对于这种情况,如果不使用 /rfx 选项,最终用户将无法看到嵌套客户端桌面和应用程序选择器中的远程桌面和应用程序图标。

RDP 连接的功能限制

由于已知问题,rdesktop 目前无法在 Ubuntu 系统上正常使用。

有关 RDP 连接存在的其他已知问题的完整列表,请参阅适用于 Linux 的 VMware Horizon Client 文档页面上的适用于 Linux 的 Horizon Client 发行说明