HDX™ 直连 (预览版)

当访问 Citrix 交付的资源时,如果可以直接通信,HDX Direct 允许内部和外部客户端设备与会话主机建立安全的直接连接。

重要提示:

HDX Direct 目前处于预览阶段。此功能不提供支持,尚不建议在生产环境中使用。要提交反馈或报告问题,请使用此表单

系统必备条件

以下是使用 HDX Direct 的系统要求:

  • 控制平面

    • 思杰 桌面即服务™
    • 思杰虚拟应用和桌面™ 2402 或更高版本
  • 虚拟投递代理 (VDA)

    • Windows:版本 2402 或更高版本
  • 工作区应用程序

    • Windows:版本 2402 或更高版本
  • 访问层

    • 带有 Citrix 网关服务的 Citrix 工作区™
    • 思杰工作区 和 NetScaler® 网关
  • 其他

    • 为了实现外部直接连接,必须启用自适应传输功能

网络连接要求

以下是使用 HDX Direct 的网络要求。

会话主机

如果您的会话主机具有防火墙(例如 Windows Defender 防火墙),则必须允许以下入站流量用于内部连接。

功能描述 协议 端口
直接的内部连接 客户端 TCP 443
内部网络的直接连接 客户端 UDP 443

注意:

VDA 安装程序会将相应的入站规则添加到 Windows Defender 防火墙。如果您使用不同的防火墙,则必须添加上述规则。

客户端网络

下表详细阐述了内部和外部用户所使用的客户端网络配置。

内部用户

描述信息 协议 源端口 目标地址 目标端口
直接的内部网络连接 TCP 客户端网络 1024–65535 VDA 网络 443
直接的内部网络连接 UDP 客户端网络 1024–65535 VDA 网络 443

外部用户

详细说明 协议 源端口 目的地址 目标端口
STUN(仅限外部用户) UDP 客户端网络 1024–65535 Internet(请参阅下面的注释) 3478, 19302
外部用户连接 UDP 客户端网络 1024–65535 数据中心的公共 IP 地址 1024–65535

数据中心网络

下表对内部和外部用户的数据中心网络进行了描述。

内部用户

描述信息 协议 源端口 目标端 目标端口
直接内部连接方式 TCP 客户端网络 1024–65535 VDA 网络 443
直接的内部连接 UDP 客户端网络 1024–65535 VDA 网络 443

外部用户

详细描述 协议 源端口 目的地 目标端口
STUN(仅限外部用户) UDP VDA 网络 1024–65535 Internet(请参阅下面的注释) 3478, 19302
外部用户连接 UDP DMZ / 内部网络 1024–65535 VDA 网络 55000–55250
外部用户连接 UDP VDA 网络 55000–55250 客户端的公共 IP 1024–65535

注意:

VDA 和 Workspace 应用程序都尝试按相同顺序向以下服务器发送 STUN 请求:

  • stunserver.stunprotocol.org:3478
  • employees.org:3478
  • stun.l.google.com:19302

如果您使用 HDX Direct 端口范围策略设置更改外部用户连接的默认端口范围,则相应的防火墙规则必须与您的自定义端口范围匹配。

配置设置

HDX Direct 默认处于禁用状态。您可以使用 Citrix 策略中的 HDX Direct 设置配置此功能。

  • HDX Direct:用于启用或禁用功能。
  • HDX Direct 模式:确定 HDX Direct 仅适用于内部客户端,还是同时适用于内部和外部客户端。
  • HDX Direct 端口范围:定义 VDA 用于来自外部客户端连接的端口范围。

注意事项

使用 HDX Direct 时需要考虑以下事项:

  • HDX Direct 适用于外部用户时,仅支持 EDT (UDP) 作为传输协议。因此,必须启用 自适应传输
  • 如果您正在使用 HDX Insight,请注意,使用 HDX Direct 会阻止 HDX Insight 数据收集,因为会话将不再通过 NetScaler Gateway 代理。
  • 当您为虚拟应用和桌面使用非持久性计算机时,Citrix 建议在会话主机而不是主/模板映像中启用 HDX Direct,以便每台计算机生成自己的证书。
  • 目前不支持将您自己的证书与 HDX Direct 配合使用。

工作原理

当直接通信可用时,HDX Direct 允许客户端与会话主机建立直接连接。当使用 HDX Direct 建立直接连接时,将使用自签名证书通过网络级加密 (TLS/DTLS) 来保护直接连接。

内部用户

下图描绘了内部用户 HDX Direct 连接过程的概述。

HDX 直连概览

  1. 客户端通过网关服务建立 HDX 会话。
  2. 成功连接后,VDA 通过 HDX 连接向客户端发送 VDA 计算机的 FQDN、其 IP 地址列表以及 VDA 计算机的证书。
  3. 客户端探测 IP 地址,以查看是否可以直接访问 VDA。
  4. 如果客户端可以使用共享的任何 IP 地址直接访问 VDA,则客户端将与 VDA 建立直接连接,并使用与步骤 (2) 中交换的证书匹配的证书通过 (D)TLS 进行保护。
  5. 一旦直接连接成功建立,那么该会话就会被转移到新的连接上,并且与网关服务的连接将会被终止。

注意:

在完成上述步骤 2 中的连接建立后,会话将处于活动状态。后续步骤不会延迟或干扰用户使用虚拟应用程序或桌面的能力。如果后续任何步骤失败,通过网关的连接将保持不变,而不会中断用户会话。

外部用户

下图描绘了外部用户 HDX Direct 连接过程的概述:

HDX 直连连接过程(/zh-cn/citrix-virtual-apps-desktops/2407/media/hdx-direct-connection-process.png)

  1. 客户端通过网关服务建立 HDX 会话。
  2. 连接成功后,客户端和 VDA 都会发送 STUN 请求以发现其公共 IP 地址和端口。
  3. STUN 服务器向客户端和 VDA 响应其相应的公共 IP 地址和端口。
  4. 通过 HDX 连接,客户端和 VDA 交换其公共 IP 地址和 UDP 端口,并且 VDA 将其证书发送给客户端。
  5. VDA 将 UDP 数据包发送到客户端的公共 IP 地址和 UDP 端口。客户端将 UDP 数据包发送到 VDA 的公共 IP 地址和 UDP 端口。
  6. 收到 VDA 的消息后,客户端会响应一个安全连接请求。
  7. 在 DTLS 握手期间,客户端会验证证书是否与步骤 (4) 中交换的证书匹配。验证后,客户端会发送其授权令牌。此时已建立安全的直接连接。
  8. 一旦直接连接成功建立,该会话就会被转移到新的连接,并且与网关服务的连接也会随之终止。

注意:

在完成上述步骤 2 中的连接建立后,会话将处于活动状态。后续步骤不会延迟或干扰用户使用虚拟应用程序或桌面的能力。如果后续任何步骤失败,通过网关的连接将保持不变,而不会中断用户会话。

证书的管​​理

会话主机

VDA 计算机上的以下两项服务负责证书的创建和管理,这两项服务都设置为在计算机启动时自动运行:

  • Citrix ClxMtp 服务:负责 CA 证书密钥的生成和轮换。
  • Citrix Certificate Manager 服务:负责生成和管理自签名根 CA 证书以及计算机证书。

以下步骤详细说明了证书管理过程:

  1. 服务在计算机启动时启动。
  2. Citrix ClxMtp Service 如果尚未创建密钥,则创建密钥。
  3. Citrix 证书管理器服务检查是否启用了 HDX Direct。如果未启用,服务将自行停止。
  4. 如果启用了 HDX Direct,Citrix Certificate Manager Service 将检查是否存在自签名根 CA 证书。如果不存在,则会创建一个自签名根证书。
  5. 一旦根 CA 证书可用,Citrix Certificate Manager Service 将检查是否存在自签名计算机证书。如果不存在,服务将生成密钥并使用计算机的 FQDN 创建新证书。
  6. 如果存在由 Citrix Certificate Manager Service 创建的现有计算机证书,并且主题名称与计算机的 FQDN 不匹配,则会生成一个新证书。

注意:

Citrix 证书管理器服务生成利用 2048 位密钥的 RSA 证书。

客户端设备

为了成功建立安全的 HDX Direct 连接,客户端必须信任用于保护会话的证书。为方便起见,客户端通过 ICA® 文件(由 Workspace 提供)接收会话的 CA 证书,因此无需将 CA 证书分发到客户端设备的证书存储区。

HDX™ 直连 (预览版)