安全

要确保您的站点与 Citrix Workspace 应用程序之间的通信安全,可以使用 Citrix Gateway 等安全技术集成 Citrix Workspace 应用程序连接。

注意:

Citrix 建议在 StoreFront 服务器与用户设备之间使用 Citrix Gateway。

  • 防火墙:网络防火墙可以根据目标地址和端口允许或阻止数据包通过。在使用 Citrix Workspace 应用程序时,如果要经过将服务器内部网络 IP 地址映射到外部 Internet 地址(即网络地址转换,或 NAT)的网络防火墙,则应配置外部地址。

  • 可信的服务器。

  • 仅适用于 Citrix Virtual Apps 部署(不适用于 XenDesktop 7):SOCKS 代理服务器或安全代理服务器(也称为安全性代理服务器、HTTPS 代理服务器或 TLS 通道代理服务器)。可以使用代理服务器来限制网络的入站和出站访问,并处理 Citrix Workspace 应用程序与服务器之间的连接。Citrix Workspace 应用程序支持 SOCKS 和安全代理协议。

  • 仅限 Citrix Virtual Apps 部署:使用传输层安全性 (TLS) 协议的 Citrix Secure Web Gateway 或 SSL Relay 解决方案。支持 TLS 1.0 到 1.2。

Citrix Gateway

Citrix Gateway(以前称为 Access Gateway)可确保与 StoreFront 应用商店的连接安全,并允许管理员详细地控制用户对桌面和应用程序的访问。

要通过 Citrix Gateway 连接桌面和应用程序,请执行以下操作:

  1. 指定管理员提供的 Citrix Gateway URL。可以通过以下方式之一执行此操作:

    • 首次使用自助服务式用户界面时,系统会提示您在添加帐户对话框中输入 URL。
    • 以后使用自助服务式用户界面时,可以通过单击首选项 > 帐户 > 添加来输入 URL
    • 如果要通过 storebrowse 命令建立连接,请在命令行中输入 URL

    该 URL 指定网关和特定应用商店(选择性指定):

    • 要连接到 Citrix Workspace 应用程序找到的第一个应用商店,请使用以下格式的 URL,例如:https://gateway.company.com
    • 要连接到特定应用商店,请使用以下格式的 URL,例如: https://gateway.company.com?<storename>。此动态 URL 的格式为非标准格式;请勿在该 URL 中包含 =(等号字符)。如果要通过 storebrowse 连接到特定应用商店,可能需要在 storebrowse 命令中用双引号引起 URL。
  2. 系统提示时,使用您的用户名、密码和安全令牌连接到该应用商店(通过网关)。有关此步骤的详细信息,请参阅 Citrix Gateway 文档。

    身份验证完成后,将显示您的桌面和应用程序。

代理服务器

代理服务器用于限制网络的入站和出站访问,并处理 Citrix Workspace 应用程序与 Citrix Virtual Apps and Desktops 部署之间的连接。Citrix Workspace 应用程序支持 SOCKS 协议(随附于 Citrix Secure Web Gateway 和 Citrix SSL Relay)、安全代理协议和 Windows NT 质询/响应 (NTLM) 身份验证。

支持的代理类型列表被 Trusted_Regions.ini 和 Untrusted_Regions.ini 限制为“Auto”(自动)、“None”(无)和“Wpad”类型。如果使用“SOCKS”、“Secure”(安全)或“Script”(脚本)类型,请编辑这些文件以向允许列表中添加其他类型。

注意:

要确保实现安全连接,请启用 TLS。

安全代理服务器

将连接配置为使用安全代理协议时,意味着同时启用了对 Windows NT 质询/响应 (NTLM) 身份验证的支持。如果此协议可用,则无需任何其他配置即可在运行时检测和使用此协议。

重要:

NTLM 支持需要 OpenSSL 1.1.1d 和 libcrypto.so 库。在用户设备上安装这些库。这些库通常包含在 Linux 发行版中。也可以从 http://www.openssl.org/ 进行下载。

Secure Web Gateway 和 SSL

可以将 Citrix Workspace 应用程序与 Citrix Secure Web Gateway 或安全套接字层 (SSL) 中继服务集成在一起。Citrix Workspace 应用程序支持 TLS 协议。TLS(传输层安全性)是 SSL 协议的最新标准化版本。互联网工程工作小组 (IETF) 在接管 SSL 开放式标准的开发任务后,将 SSL 更名为 TLS。TLS 通过提供服务器身份验证、数据流加密和消息完整性检查,来保障数据通信的安全。有些组织(包括美国政府组织)要求使用 TLS 来保障数据通信的安全。这些组织可能还要求使用验证的加密,例如 FIPS 140(联邦信息处理标准)。FIPS 140 是一个加密标准。

Secure Web Gateway

可以在普通模式或中继模式下使用 Citrix Secure Web Gateway,来为 Citrix Workspace 应用程序与服务器之间的通信提供安全通道。如果在普通模式下使用 Citrix Secure Web Gateway,则不需要配置 Citrix Workspace 应用程序。

如果安全网络中的服务器上安装了 Citrix Secure Web Gateway 代理,则可以在中继模式下使用 Citrix Secure Web Gateway 代理。有关详细信息,请参阅 Citrix Virtual Apps (Citrix Secure Web Gateway) 文档。

如果使用中继模式,Citrix Secure Web Gateway 服务器将相当于一个代理,并且必须配置 Citrix Workspace 应用程序才能使用:

  • Citrix Secure Web Gateway 服务器的完全限定的域名 (FQDN)。
  • Citrix Secure Web Gateway 服务器的端口号。Citrix Secure Web Gateway 版本 2.0 不支持中继模式。

FQDN 必须按顺序列出以下三个组成部分:

  • 主机名
  • 中间域
  • 顶级域

例如:my_computer.my_company.com 是一个 FQDN,因为它依次列出主机名 (my_computer)、中间域 (my_company) 和顶级域 (com)。中间域和顶级域的组合 (my_company.com) 称为域名。

SSL Relay

默认情况下,Citrix SSL Relay 使用 Citrix Virtual Apps 服务器上的 TCP 端口 443 进行 TLS 安全通信。SSL Relay 收到 TLS 连接时,先解密数据再将其重定向到服务器。

如果将 SSL Relay 配置为侦听 443 以外的其他端口,则必须将该非标准侦听端口号指定给 Citrix Workspace 应用程序。

可以使用 Citrix SSL Relay 来保障以下情况下的通信安全:

  • 在启用了 TLS 的用户设备与服务器之间

有关配置和使用 SSL Relay 来确保安装安全的信息,请参阅 Citrix Virtual Apps 文档。

TLS

可以通过在 [WFClient] 部分中添加以下配置选项来控制能够协商的 TLS 协议的版本:

  • MinimumTLS=1.2
  • MaximumTLS=1.2

这些值是默认值,在代码中实现。请根据需要调整这些值。

注意:

  • 无论何时启动程序,都会读取这些值。如果您在启动 selfservice 或 storebrowse 后更改了这些值,请键入 killall AuthManagerDaemon ServiceRecord selfservice storebrowse

  • 适用于 Linux 的 Citrix Workspace 应用程序不允许使用 SSLv3 协议。

要选择密码套件集,请在 [WFClient] 部分中添加以下配置选项:

  • SSLCiphers=GOV

此值为默认值。其他可识别的值为 COM 和 ALL。

注意:

与 TLS 版本配置一样,如果您在启动 selfservice 或 storebrowse 后更改了此值,则必须键入: killall AuthManagerDaemon ServiceRecord selfservice storebrowse

加密更新

此功能是安全通信协议的重要变更。前缀为 TLS_RSA_ 的密码套件不提供向前保密,并且被视为弱密码套件。

TLS_RSA_ 密码套件已被完全删除。相反,本版本支持高级 TLS_ECDHE_RSA_ 密码套件。如果您的环境未配置 TLS_ECDHE_RSA_ 密码套件,则由于密码较弱,客户端启动将不受支持。对于客户端身份验证,支持 1536 位 RSA 密钥。

支持以下高级密码套件:

  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (0xc013)

DTLS v1.0 支持以下密码套件:

  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
  • TLS_EMPTY_RENEGOTIATION_INFO_SCSV

DTLS v1.2 支持以下密码套件:

  • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
  • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
  • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
  • TLS_EMPTY_RENEGOTIATION_INFO_SCSV

注意:

自版本 1903 及更高版本起,Citrix Gateway 12.1 及更高版本支持 DTLS。有关 Citrix Gateway 的 DTLS 支持的密码套件的信息,请参阅支持 DTLS 协议

密码套件

要启用不同的密码套件,请将参数 SSLCiphers 的值更改为 ALLCOMGOV。默认情况下,该选项在 $ICAROOT/config 目录下的 All_Regions.ini 文件中设置为 ALL

下面几组密码套件分别由 ALL、GOV 和 COM 提供:

  • ALL
    • 支持全部 3 个密码。
  • GOV
    • TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)
    • TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 (0xc028)
  • COM
    • TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (0xc013)

有关故障排除信息,请参阅密码套件

前缀为 TLS_RSA_ 的密码套件不提供向前保密。这些密码套件现在通常已被行业弃用。但是,为支持与早期版本的 Citrix Virtual Apps and Desktops 向后兼容,适用于 Linux 的 Citrix Workspace 应用程序具有用于启用这些密码套件的选项。

为获得更高的安全性,请将标志 Enable\_TLS\_RSA\_ 设置为 False

下面是已弃用的密码套件列表:

  • TLS_RSA_AES256_GCM_SHA384
  • TLS_RSA_AES128_GCM_SHA256
  • TLS_RSA_AES256_CBC_SHA256
  • TLS_RSA_AES256_CBC_SHA
  • TLS_RSA_AES128_CBC_SHA
  • TLS_RSA_3DES_CBC_EDE_SHA
  • TLS_RSA_WITH_RC4_128_MD5
  • TLS_RSA_WITH_RC4_128_SHA

注意:

最后两个密码套件使用 RC4 算法,并且已弃用,因为这两个套件不安全。还可以考虑弃用 TLS_RSA_3DES_CBC_EDE_SHA 密码套件。可以使用标志来强制执行所有这些弃用。

有关配置 DTLS v1.2 的详细信息,请参阅 Citrix Virtual Apps and Desktops 文档中的自适应传输部分。

必备条件:

如果您使用的是版本 1901 及更早版本,请执行以下步骤:

如果 .ICAClient 已存在于当前用户的主目录中:

  • 删除 All\_Regions.ini 文件

  • 要保留 AllRegions.ini 文件,请在 [Network\SSL] 部分的结尾处添加以下行:
    • Enable_RC4-MD5=
    • Enable_RC4_128_SHA=
    • Enable_TLS_RSA_=

如果当前用户的主文件夹中不存在 .ICAClient 文件夹,则指示 Citrix Workspace 应用程序的全新安装。在这种情况下,将保留这些功能的默认设置。

下表列出了每组中的密码套件: 表 1 - 密码套件支持列表

显示密码套件支持列表的表格图片

注意:

上文中的所有密码套件都遵从 FIPS- 和 SP800-52- 规则。前两个密码套件仅允许用于 (D)TLS1.2 连接。请参阅表 1 – 密码套件支持列表,了解密码套件可支持性的综合表征。

安全