Citrix Hypervisor

证书验证

为池启用证书验证后,其管理网络上的所有 TLS 通信终端节点在传输机密信息之前都会使用证书验证其对等通信端点的身份。

行为

由管理网络上的 Citrix Hypervisor 服务器启动的连接要求目标端点提供 TLS 证书以验证其身份。此要求会影响作为池的一部分或与池进行交互的以下项目:

  • 池中的服务器
  • Citrix Hypervisor Center
  • 使用 API 的第三方客户端

证书验证与 Citrix Hypervisor 提供的自签名证书和由受信任的机构签名的用户安装证书兼容。有关详细信息,请参阅在服务器上安装 TLS 证书

池中的每个 Citrix Hypervisor 服务器都有两个用于标识它的证书:

  • 池内部身份证书用于保护池内各服务器之间的通信。对于池内的通信,Citrix Hypervisor 始终使用自签名证书。

  • 服务器身份证书用于向与管理网络上的池进行通信的任何客户端应用程序验证服务器的身份。对于服务器与客户端应用程序之间的通信,您可以使用自签名证书,也可以在服务器上安装自己的 TLS 证书。

当服务器首次加入池或客户端首次与池建立连接时,池将信任该连接。在第一次进行此连接期间,将在池和加入的服务器或连接的客户端之间交换证书。对于此服务器或客户端在管理网络上进行的所有后续通信,证书将用于验证通信中所涉及各方的身份。

如果启用了证书验证的 Citrix Hypervisor 服务器尝试加入未启用此功能的池,则操作不会成功。Citrix Hypervisor Center 会提供一条警告消息,建议您在池上启用证书验证。

如果未启用证书验证的 Citrix Hypervisor 服务器尝试加入已启用此功能的池,则操作不会成功。Citrix Hypervisor Center 会提供一条警告消息,建议您在加入的服务器上启用证书验证。

当服务器离开启用了证书验证的池时,服务器和池都会删除与对方相关的证书。

虚拟设备行为

在此预览期间,当 Citrix Hypervisor Conversion Manager 虚拟设备充当 TLS 客户端端点时,则无需按照要求进行认证检查。

在此预览期间,Workload Balancing 虚拟设备可以与证书验证功能结合使用。您必须确保满足以下条件:

  • 自签名证书的密钥长度为 2048
  • 在 Stunnel 配置中添加必需的参数
  • Workload Balancing 自签名证书已安装到您的 Citrix Hypervisor 服务器中

有关详细信息,请参阅配置 Citrix Hypervisor 以验证自签名证书

为您的池启用证书验证

默认情况下,对 Citrix Hypervisor 8 Cloud 及更高版本的全新安装启用证书验证。

如果从 Citrix Hypervisor 的早期版本升级,则不会自动启用证书验证,您必须负责将其启用。下次连接到升级后的池时,Citrix Hypervisor Center 会提示您启用证书验证。

在池上启用证书验证之前,请确保池中未运行任何操作。

使用 Citrix Hypervisor Center 进行启用

Citrix Hypervisor Center 提供了多种启用证书验证的方法。

  • 首次将 Citrix Hypervisor Center 连接到未启用证书验证的池时,系统会提示您将其启用。单击是,启用证书验证

  • 菜单中,选择启用证书验证

  • 在池的常规选项卡上,右键单击证书验证条目,然后从菜单中选择启用证书验证

使用 xe CLI 进行启用

要为池启用证书验证,请在池中服务器的控制台中运行以下命令:

xe pool-enable-tls-verification

管理证书

您可以安装用于验证服务器身份的证书、查看有关这些证书的信息,以及重置这些证书。

安装证书

您可以为服务器安装您自己的 TLS 证书,以便在从管理网络上的客户端应用程序接收连接时显示为其身份证书。

有关详细信息,请参阅在服务器上安装 TLS 证书

查看证书信息

要了解池是否已启用证书验证,请执行以下操作:

  • 在 Citrix Hypervisor Center 中,查看池的常规选项卡。常规部分有一个证书验证条目,显示启用还是禁用了证书验证。此选项卡还包含证书部分,其中列出了 CA 证书的名称、有效期和指纹。

  • 使用 xe CLI,您可以运行以下命令:

     xe pool-param-get uuid=<pool_uuid> param-name=tls-verification-enabled
    

    如果启用了证书验证,命令输出中将显示行 tls-verification-enabled ( RO): true

要查看 Citrix Hypervisor 服务器上的证书相关信息,请执行以下操作:

  • 在 Citrix Hypervisor Center 中,转到该服务器的常规选项卡。证书部分将显示服务器身份证书和池内部身份证书的指纹和有效日期。

  • 使用 xe CLI,您可以运行以下命令:

     xe certificate-list
    

刷新池内部身份证书

您可以使用 xe CLI 刷新池内部身份证书:

  1. 通过运行以下命令查找要重置其证书的服务器的 UUID:

    xs host-list
    
  2. 要重置证书,请运行以下命令:

    xe host-refresh-server-certificate host=<host_uuid>
    

    注意

    任何主机选择器参数均可与此命令一起使用,以指示服务器重置证书。

重置服务器身份证书

可以从 Citrix Hypervisor Center 或 xe CLI 重置服务器身份证书。重置证书会从服务器中删除该证书,并在其位置安装新的自签名证书。

要在 Citrix Hypervisor Center 重置证书,请执行以下操作:

  1. 转到服务器的常规选项卡。
  2. 证书部分中,右键单击要重置的证书。
  3. 从菜单中选择重置证书
  4. 在出现的对话框中,单击以确认证书重置。

或者,在服务器菜单中,您可以转到证书 > 重置证书

重置证书时,与服务器的所有现有连接都将断开连接,包括 Citrix Hypervisor Center 与服务器之间的连接。

要使用 xe CLI 重置证书,请执行以下操作:

  1. 通过运行以下命令查找要重置其证书的服务器的 UUID:

    xs host-list
    
  2. 要重置证书,请运行以下命令:

    xe host-reset-server-certificate host=<host_uuid>
    

    注意

    任何主机选择器参数均可与此命令一起使用,以指示服务器重置证书。

重置证书时,与服务器的所有现有连接都将断开连接,包括 Citrix Hypervisor Center 与服务器之间的连接。重置证书后,Citrix Hypervisor Center 会自动重新连接到服务器。

到期警报

当您的服务器身份证书、池内部身份证书或池 CA 证书快要过期时,Citrix Hypervisor 会在通知视图中显示警报。

暂时禁用证书验证

我们不建议您在服务器或池上启用证书验证后将其禁用。但是,Citrix Hypervisor 提供的命令可用于在对证书存在的问题进行故障排除时针对每个服务器禁用证书验证。

要暂时禁用证书验证,请在服务器控制台上运行以下命令:

xe host-emergency-disable-tls-verification

在启用了证书验证功能的池中的服务器上禁用证书验证时,Citrix Hypervisor Center 会在通知中显示警报。

解决服务器上的证书存在的所有问题后,请确保在服务器上重新启用证书验证。要重新启用证书验证,请在服务器控制台上运行以下命令:

xe host-emergency-reenable-tls-verification
证书验证