Citrix虚拟应用和桌面服务

对接协议

在使用Citrix网关服务的环境中,Rendezvous协议允许HDX会话绕过Citrix云连接器,直接安全地连接到Citrix网关服务。

需求

  • 使用Citrix工作区和Citrix网关服务访问环境。
  • 控制平面:Citrix虚拟应用与桌面服务(Citrix Cloud)。
  • VDA: 1912版本或更高版本。
    • 2012版本是EDT交会的最低要求。
    • 版本2012是最低要求的非透明代理支持(不支持PAC文件)。
    • 版本2103是使用PAC文件进行代理配置所需的最低要求。
  • 在Citrix策略中启用Rendezvous协议。有关更多信息,请参见会合协议策略设置
  • vda必须具有访问权限https:// * .nssvc.net,包括所有子域。如果不能以这种方式将所有子域添加到允许列表,请使用https:// * .c.nssvc.net而且https:// * .g.nssvc.net代替。有关更多信息,请参见网络连接要求Citrix云文档部分(在虚拟应用程序和桌面服务下)和知识中心文章CTX270584
  • VDAs必须能够分别为TCP Rendezvous和EDT Rendezvous在TCP 443和UDP 443上连接到上面提到的地址。
  • 当代理会话时,云连接器必须获取VDAs的FQDNs。通过以下两种方式之一来完成:
    • 启用站点的DNS解析。导航到Full Configuration > Settings然后打开使DNS解析设置。您也可以使用Citrix Virtual Apps and Desktops Remote PowerShell SDK执行此命令Set-BrokerSite -DnsResolutionEnabled真正的美元.有关Citrix虚拟应用程序和桌面远程PowerShell SDK的更多信息,请参见sdk和api
    • VDAs的带PTR记录的DNS反向查找区域。如果您选择此选项,我们建议您将VDAs配置为始终尝试注册PTR记录。为此,请使用组策略编辑器或组策略对象,导航到计算机配置>管理模板>网络> DNS客户端,并设置注册PTR记录启用并注册.如果连接的DNS后缀与域的DNS后缀不匹配,还需要配置Connection-specific DNS后缀设置,使机器成功注册PTR记录。

    注意:

    如果使用DNS解析选项,云连接器必须能够解析VDA机器的完全合格域名(FQDNs)。在内部用户直接连接到VDA机器的情况下,客户机设备还必须能够解析VDA机器的FQDNs。

    如果使用DNS反向查找区域,PTR记录中的FQDNs必须与VDA机器的FQDNs匹配。如果PTR记录包含不同的FQDN,则Rendezvous连接失败。例如,如果机器的FQDN是vda01.domain.net, PTR记录必须包含vda01.domain.net.不同的FQDN,例如vda01.sub.domain.net不工作。

代理配置

VDA支持通过代理建立Rendezvous连接。

代理注意事项

当使用Rendezvous的代理时,请考虑以下几点:

  • 支持透明代理、非透明HTTP代理和SOCKS5代理。
  • 不支持报文解密和报文检测。配置一个异常,使VDA和Gateway Service之间的ICA流量不被拦截、解密或检测。否则,连接断开。
  • HTTP代理通过使用协商和Kerberos或NT LAN Manager (NTLM)身份验证协议支持基于机器的身份验证。

    当您连接到代理服务器时,Negotiate认证方案会自动选择Kerberos协议。如果不支持Kerberos,协商将退回到NTLM进行身份验证。

    注意:

    要使用Kerberos,必须为代理服务器创建服务主体名(SPN),并将其与代理的Active Directory帐户关联。VDA以该格式生成SPNHTTP / < proxyURL >控件中检索代理URL对接代理策略设置。如果不创建SPN,身份验证将退回到NTLM。在这两种情况下,VDA机器的标识都用于身份验证。

  • 目前不支持使用SOCKS5代理进行身份验证。如果使用SOCKS5代理,您必须配置一个例外,以便访问网关服务地址(需求中指定)的流量可以绕过认证。
  • 只有SOCKS5代理支持EDT数据传输。对于HTTP代理,使用TCP作为ICA的传输协议。

透明代理

如果在网络中使用透明代理,则不需要在VDA上进行额外配置。

不透明的代理

如果在网络中使用非透明代理,请配置对接代理配置设置。当启用该设置时,指定HTTP或SOCKS5代理地址,或输入PAC文件的路径,以便VDA知道使用哪个代理。例如:

  • 代理地址:http:// < URL或IP >: <端口>socks5: / / < URL或IP >: <口>
  • PAC文件:http:// < URL或IP > / <路径> / <文件名> .pac

如果使用PAC文件配置代理,使用Windows HTTP服务所需的语法定义代理:PROXY[<方案>=]:<端口>.例如,PROXY socks5=:<端口>

会合验证

如果您满足所有需求,请遵循以下步骤来验证是否使用了Rendezvous:

  1. 在HDX会话中启动PowerShell或命令提示符。
  2. 运行ctxsession.exe - v
  3. 使用的传输协议表示连接的类型:
    • TCP对接:TCP > SSL > CGP > ica
    • 约会地点:美国东部时间Udp > DTLS > CGP > ica
    • 通过云连接器代理:TCP > CGP > ica

额外的注意事项

Windows密码套件顺序

对于自定义密码套件顺序,请确保从以下列表中包含vda支持的密码套件:

  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

如果自定义密码套件顺序不包含这些密码套件,交会连接将失败。

Zscaler私人访问

如果使用Zscaler Private Access (ZPA),强烈建议您为网关服务配置旁路设置,以避免延迟增加和相关的性能影响。为此,您必须为网关服务地址(在需求中指定)定义应用程序段,并将它们设置为总是绕过。有关配置应用程序段以绕过ZPA的信息,请参见Zscaler文档

约会是如何工作的

此图是Rendezvous连接流的概览。

对接协议概述

按照以下步骤来理解Rendezvous连接流程:

  1. 导航到Citrix工作区。
  2. 在Citrix工作区中输入凭证。
  3. 如果使用内部部署的Active Directory, Citrix虚拟应用程序和桌面服务将使用Cloud Connector通道对Active Directory进行凭证验证。
  4. Citrix工作区显示从Citrix虚拟应用和桌面服务统计的资源。
  5. 从Citrix Workspace中选择资源。Citrix虚拟应用与桌面服务向VDA发送消息,为即将到来的会话做准备。
  6. Citrix工作区向端点发送一个ICA文件,该文件包含Citrix Cloud生成的STA票据。
  7. 终端连接Citrix Gateway服务,提供票据连接VDA, Citrix Cloud验证票据。
  8. Citrix Gateway服务向云连接器发送连接信息。云连接器确定连接是否应该是Rendezvous连接,并将信息发送给VDA。
  9. VDA与Citrix Gateway服务建立直接连接。
  10. 如果VDA和Citrix Gateway服务之间不能直接连接,VDA通过云连接器代理它的连接。
  11. Citrix Gateway服务在终端设备和VDA之间建立连接。
  12. VDA通过云连接器与Citrix虚拟应用和桌面服务验证其许可证。
  13. Citrix虚拟应用和桌面服务通过Cloud Connector向VDA发送和应用会话策略。
对接协议