Product Documentation

保护客户端-服务器通信

Sep 14, 2015

在客户端和服务器之间传输的会话数据共有两种加密方法:SecureICA 和 SSL/TLS 加密。

默认情况下,将所有 ICA 通信设置为 Basic ICA 协议加密。Basic 设置使数据变模糊,但不提供行业标准加密。您可以将 SecureICA 加密级别增加至 128 位和/或添加 SSL/TLS 加密。

这两种客户端-服务器加密之间的区别如下所示:

  • SecureICA。SecureICA 功能加密在运行 XenApp 的服务器和客户端之间发送的会话数据。一般来说,如果要加密 LAN 或 WAN 中的内部通信或者加密对 Intranet 的内部访问,可以增加 ICA 协议加密的级别。增加 ICA 协议加密的级别可以防止以明文形式发送会话数据,但它并不执行任何身份验证。
  • SSL/TLS 协议。SSL/TLS 协议可以保护您免受内部的和外部的威胁,具体取决于您的网络配置。Citrix 建议您启用 SSL/TLS 协议。启用 SSL/TLS 可确保会话数据具有保密性、完整性并通过身份验证。

如果您希望防御来自内部和外部两方面的威胁,则必须启用 SSL 加密。将 SecureICA 和 SSL 或 TLS 配合使用可以提供端到端加密。

发布应用程序或资源时,会在服务器端启用这两个协议。Web Interface 和 Citrix Receiver 自动检测并使用在服务器上(即在发布资源时)指定的设置。

为客户端-服务器加密指定的设置可能会与 XenApp 和您的 Windows 操作系统中的任何其他加密设置进行交互。如果在服务器或客户端设备上设置了具有更高优先级的加密级别,则可以覆盖为已发布资源指定的设置。使用以下所有设置中最安全的设置:

  • 远程桌面会话主机配置中的设置
  • 应用于连接的 XenApp 策略设置
  • 客户端-服务器设置(即发布资源时设置的级别)
  • Microsoft 组策略

设置加密级别时,确保它与您在其他任何地方指定的加密设置一致。例如,在 TSCC 或连接策略中指定的任何加密设置都不能高于应用程序发布设置。

如果应用程序的加密级别低于通过 TSCC 和连接策略指定的级别,则 TSCC 设置和策略将覆盖应用程序设置。

使用 SecureICA

Citrix Receiver 使用 ICA 协议对用户输入(键击和鼠标单击)进行编码,然后将编码传输到服务器场进行处理。服务器场使用 ICA 协议格式化应用程序输出(显示和音频),然后将其返回到客户端设备。

当您发布资源时或发布资源后,可以提高 ICA 协议的加密级别。

除了希望防御内部安全威胁(例如窃听)这种情形外,您可能还希望在以下情形中使用 ICA 加密:

  • 需要保护使用 Microsoft DOS 或在 Win16 系统上运行的设备中的通信
  • 您的旧设备运行的软件无法升级为使用 SSL
  • 在不存在“中间人”攻击风险时作为 SSL/TLS 加密的备用加密方法

遍历公共网络时,Citrix 建议不要将 SecureICA 用作唯一的加密方法。Citrix 建议使用 SSL/TLS 加密遍历公用网络。与 SSL/TLS 加密不同,SecureICA 单独使用时不提供服务器身份验证。因此,当信息通过公共网络时可能被截获,然后被重新路由到假冒服务器。SecureICA 也不检查数据完整性。

启用 SSL/TLS 协议

如果您的环境中客户端设备是通过 Internet 与场进行通信的,Citrix 建议在发布资源时启用 SSL/TLS 加密。如果要使用 SSL/TLS 加密,您必须使用 SSL Relay 功能或 Secure Gateway,从而将 ICA 通信中继到运行 XenApp 的计算机。

您的环境的性质决定启用 SSL 的方式:

  • 对于与您的场远程进行通信的客户端设备,Citrix 建议您使用 Secure Gateway 将客户端通信传递到运行 XenApp 的计算机。在运行 XenApp 的计算机上,Secure Gateway 与 SSL Relay 能够结合起来用于保护 Secure Gateway 与 XenApp 的通信,具体取决于您的需求。
  • 对于与场进行内部通信的客户端设备来说,您可以执行以下操作之一,将客户端通信传递到运行 XenApp 的计算机:
    • 将 Secure Gateway 与内部防火墙结合使用,并将您的场放在防火墙后
    • 使用 SSL Relay 功能保护场中的服务器之间的通信

在较大型的环境中,使用 SSL Relay 需要在场中的每台服务器上存储证书,因此,并不是很方便。在大型环境中,如果担心遭到内部威胁,您可能要将 Secure Gateway 与内部防火墙结合使用。

无论您使用的是 Secure Gateway 还是 SSL Relay,只要想使用 SSL,您都必须在发布应用程序时选择启用 SSL 和 TLS 协议设置。

如果要将 Web Interface 与 Secure Gateway 一起使用,请参阅 Secure Gateway 和 Web Interface 管理员文档中有关 SSL 的信息。

配置会话数据加密

以下过程解释了如何在发布应用程序之后通过启用 SecureICA(ICA 协议加密)或 SSL/TLS(安全套接字层和传输层安全性)加密来提高加密级别。

  1. 在 AppCenter 的左侧窗格中,选择一个已发布应用程序。
  2. 操作菜单中,选择应用程序属性
  3. 应用程序属性对话框中,依次选择高级 > 客户端选项
  4. 在“连接加密”部分,选择以下选项中的一个或多个:
    • 选中启用 SSL 和 TLS 协议复选框。此选项要求对连接到已发布应用程序的客户端使用 SSL 和 TLS 协议。
    • 在“加密”部分,从下拉列表框中选择较高的加密级别。

如果您使用的是 SecureICA,并且希望确保始终以某一级别对 ICA 通信进行加密,则可以设置加密策略。创建 SecureICA 策略可以防止您意外以较低的加密级别发布资源。如果启用了此策略,则当您以低于策略要求的加密级别发布资源时,服务器将拒绝客户端连接。对于从服务器获取其加密设置的软件(例如 Web Interface 和 Citrix Receiver),这可能会引发问题。

因此,Citrix 建议在启用了加密策略的情况下,发布应用程序(或资源)的最佳做法为:复制一个现有的已发布应用程序并对其进行编辑,然后,只要用希望发布的新应用程序来替换该应用程序即可。

为 ICA 加密设置策略

为客户端-服务器加密指定的设置可能会与 XenApp 和您的 Windows 操作系统中的任何其他加密设置进行交互。如果在服务器或客户端设备上设置了具有更高优先级的加密级别,则可以覆盖为已发布资源指定的设置。

SecureICA 不执行身份验证,也不检查数据完整性。要为服务器场提供端到端加密,请将 SecureICA 与 SSL/TLS 加密一起使用。SecureICA 不使用符合 FIPS 标准的算法。如果这样会带来问题,请将服务器和 Citrix Receiver 配置为避免使用 SecureICA。

  1. 请配置 Citrix 用户策略 SecureICA 最低加密等级设置的以下选项之一:
    • 基本。使用非 RC5 算法加密客户端连接。它保护数据流使之不能被直接读取,但可以解密。
    • 仅限 RC5 (128 位)登录。使用 RC5 128 位加密来加密登录数据,使用基本加密来加密客户端连接。
    • RC5 (40 位)。使用 RC5 40 位加密来加密客户端连接。
    • RC5 (56 位)。使用 RC5 56 位加密来加密客户端连接。
    • RC5 (128 位)。使用 RC5 128 位加密来加密客户端连接。