Citrix虚拟应用和桌面服务

管理安全密钥

注:

  • 您必须将此特性与StoreFront 1912 LTSR CU2或更高版本结合使用。

  • 安全XML特性仅支持在Citrix ADC和Citrix Gateway版本12.1及更高版本。

这个特性允许您只允许经过批准的StoreFront和Citrix Gateway机器与Citrix Cloud通信。启用此功能后,任何不包含密钥的请求都将被阻止。使用此特性可增加额外的安全层,以防止来自内部网络的攻击。

使用此功能的一般工作流如下所示:

  1. 通过使用PowerShell SDK在Studio中启用该特性。

  2. 在Studio中配置设置。(使用Studio控制台或PowerShell)。

  3. 在StoreFront中配置设置。(使用PowerShell)。

  4. 在Citrix ADC中配置设置。

启用安全密钥特性

默认情况下,该功能是禁用的。要启用它,请使用Remote PowerShell SDK。有关远程PowerShell SDK的更多信息,请参见sdk和api

要启用该功能,请执行以下步骤:

  1. 运行Citrix虚拟应用程序和桌面远程PowerShell SDK。
  2. 在命令窗口中,运行以下命令:
    • Add-PSSnapIn Citrix *.该命令添加Citrix管理单元。
    • 设置ConfigSiteMetadata-名称“Citrix_DesktopStudio_SecurityKeyManagementEnabled”-值“True”

在Studio中配置设置

您可以使用Studio控制台或PowerShell在Studio中配置设置。

使用Studio控制台

启用该特性后,导航到Studio>设置>管理安全密钥点击编辑.的管理安全密钥窗口出现。点击拯救应用更改并退出窗口。

管理安全密钥向导

重要:

  • 有两个键可供使用。您可以使用相同或不同的密钥通过XML和STA端口进行通信。我们建议您一次只使用一个键。未使用的关键点仅用于关键点旋转。
  • 不要单击刷新图标来更新已在使用的键。如果您这样做,将导致服务中断。

单击刷新图标以生成新密钥。

通过XML端口进行通信需要密钥(仅限店面).如果选择,则需要一个密钥来验证XML端口上的通信。StoreFront通过这个端口与Citrix Cloud通信。有关更改XML端口的信息,请参阅Knowledge Center的文章CTX127945

需要通过STA端口进行通信的密钥. 如果选中,则需要密钥来验证STA端口上的通信。Citrix网关和店面通过此端口与Citrix Cloud通信。有关更改STA端口的信息,请参阅知识中心文章CTX101988

应用更改后,单击退出管理安全密钥

使用PowerShell

以下是与Studio操作等效的PowerShell步骤。

  1. 运行Citrix虚拟应用程序和桌面远程PowerShell SDK。

  2. 在命令窗口中,运行以下命令:
    • Add-PSSnapIn Citrix *
  3. 运行以下命令以生成密钥并设置密钥1:
    • 新BrokerXmlServiceKey
    • Set-BrokerSite -XmlServiceKey1 <您生成的密钥>
  4. 执行如下命令生成密钥并设置Key2:
    • 新BrokerXmlServiceKey
    • 设置BrokerSite-XmlServiceKey2<您生成的密钥>
  5. 运行以下一个或两个命令以启用密钥在验证通信时的使用:
    • 要通过XML端口验证通信,请执行以下操作:
      • Set-BrokerSite -RequireXmlServiceKeyForNFuse真正的美元
    • 要通过STA端口验证通信,请执行以下操作:
      • 设置BrokerSite-RequireXmlServiceKeyForSta$true

有关指导和语法,请参阅PowerShell命令帮助。

在StoreFront中配置设置

在Studio中完成配置后,您需要使用PowerShell在StoreFront中配置相关设置。

在StoreFront服务器上运行以下PowerShell命令:

  • 要为XML端口上的通信配置密钥,请使用获取标准存储服务设置STFStoreService命令。例如:
    • PS C:\>设置STFStoreFarm$farm-Farmtype XenDesktop-Port 80-TransportType HTTP-Servers-xmlvalidatenabled$true-xmlvalidatesecret<在Studio中生成的密钥>
  • 要配置通过STA端口进行通信的密钥,请使用New-STFSecureTicketAuthority命令例如:
    • PS C:\> $sta = new - stfsecureketauthority - stal < sta URL> -StaValidationEnabled $true -StavalidationSecret <您在Studio>中生成的密钥

有关指导和语法,请参阅PowerShell命令帮助。

在Citrix ADC中配置设置

注:

除非您使用Citrix ADC作为网关,否则不需要在Citrix ADC中配置此功能。如果您使用Citrix ADC,请遵循以下步骤。

  1. 确保以下前提配置已经到位:

    • 配置了以下Citrix ADC相关IP地址。
      • 用于访问Citrix ADC控制台的Citrix ADC管理IP(NSIP)地址。有关详细信息,请参阅配置NSIP地址

      ADC管理IP地址

      • 子网IP(SNIP)地址,用于启用Citrix ADC设备与后端服务器之间的通信。有关详细信息,请参阅配置子网IP地址
      • Citrix网关虚拟IP地址和负载平衡器虚拟IP地址,用于登录ADC设备以启动会话。有关详细信息,请参阅创建虚拟服务器

      子网IP地址

    • 在Citrix ADC设备中启用了所需的模式和特性。
      • 要启用这些模式,请在Citrix ADC GUI中导航至系统>设置>配置模式
      • 要启用该功能,请在Citrix ADC GUI导航到系统>设置>配置基本功能
    • 证书相关配置已完成。
      • 已创建证书签名请求(CSR)。有关详细信息,请参阅创建证书

      创建CSR证书

      安装服务器证书

      安装CA证书

      虚拟桌面网关

  2. 添加重写操作。有关详细信息,请参阅配置重写操作

    1. 引导到AppExpert>重写>操作
    2. 点击添加添加新的重写操作。你可以将这个动作命名为“set Type to INSERT_HTTP_HEADER”。

    添加修改操作

    1. 在里面类型选择插入\u HTTP\u头
    2. 在里面标题名,输入X-Citrix-XmlServiceKey。
    3. 在里面表示,添加用引号。您可以从桌面交付控制器配置复制XmlServiceKey1值。

    XML服务键值

  3. 添加重写策略。有关详细信息,请参阅配置重写策略
    1. 引导到AppExpert >重写>策略

    2. 点击添加添加新策略。

    添加重写策略

    1. 在里面行动,选择在前面步骤中创建的操作。
    2. 在里面表示,add HTTP.REQ.无效。
    3. 点击好啊
  4. 设置负载平衡。必须为每个STA服务器配置一个负载平衡虚拟服务器。如果没有,会话将无法启动。

    有关详细信息,请参见设置基本的负载平衡

    1. 创建负载平衡虚拟服务器。
      • 引导到流量管理>负载平衡>服务器
      • 在里面虚拟服务器页面,点击添加

      添加负载平衡服务器

      • 在里面协议选择HTTP
      • 添加负载分担虚拟IP地址和港口选择80
      • 点击好啊
    2. 创建负载平衡服务。
      • 引导到流量管理>负载均衡>业务

      添加负载均衡服务

      • 在里面现有的服务器,选择在上一步中创建的虚拟服务器。
      • 在里面协议选择HTTP而在港口选择80
      • 点击好啊然后点击完成
    3. 将服务绑定到虚拟服务器。
      • 选择之前创建的虚拟服务器,单击编辑
      • 在里面服务及服务组,点击没有负载均衡虚拟服务器业务绑定

      绑定服务到虚拟服务器

      • 在里面服务绑定,选择先前创建的服务。
      • 点击绑定
    4. 将前面创建的重写策略绑定到虚拟服务器。
      • 选择之前创建的虚拟服务器,单击编辑
      • 在里面高级设置,点击政策,然后在政策部分点击+

      绑定重写策略

      • 在里面选择策略选择重写而在选择类型选择要求
      • 点击持续
      • 在里面选择政策,选择前面创建的重写策略。
      • 点击绑定
      • 点击完成
    5. 如果需要,为虚拟服务器设置持久性。
      • 选择之前创建的虚拟服务器,单击编辑
      • 在里面高级设置,点击持久性

      设置的持久性

      • 选择持久性类型作为其他
      • 选择DESTIP根据虚拟服务器选择的服务的IP地址(目标IP地址)创建持久性会话
      • 在里面IPv4网络掩码,添加与DDC相同的网络掩码。
      • 点击好啊
    6. 对其他虚拟服务器也重复这些步骤。

如果Citrix ADC设备已配置Citrix虚拟桌面,则配置会发生更改

如果已将Citrix ADC设备配置为Citrix虚拟桌面,则要使用安全XML功能,必须进行以下配置更改。

  • 在会话启动之前,更改安全票证颁发机构URL使用负载均衡虚拟服务器的FQDNs。
  • 确保TrustRequestsEntToHexMLServicePort参数设置为False。默认情况下,TrustRequestsEntToHexMLServicePort参数设置为False。但是,如果客户已经为Citrix虚拟桌面配置了Citrix ADC,则TrustRequestsEntToHexMLServicePort设置为True。
  1. 在Citrix ADC GUI中,导航到配置>与Citrix产品集成点击XenApp和XenDesktop
  2. 选择网关实例并单击编辑图标。

    编辑现有网关配置

  3. 在StoreFront窗格中,单击编辑图标。

    编辑店面详细信息

  4. 添加安全票证授权URL
    • 如果启用了安全XML功能,则STA URL必须是负载平衡服务的URL。
    • 如果禁用了Secure XML特性,则STA URL必须为STA (DDC的地址)的URL,并且DDC上的TrustRequestsSentToTheXmlServicePort参数必须设置为True。

    添加STA URL

管理安全密钥