Citrix Hypervisor 8.2

工作负载平衡证书

Citrix Hypervisor和Workload Balancing通过HTTPS进行通信。在工作负载平衡配置过程中,向导会自动创建自签名测试证书。此自签名测试证书允许Workload Balancing建立到Citrix Hypervisor的TLS连接。默认情况下,Workload Balancing会自动创建与Citrix Hypervisor的TLS连接。在配置“工作负载均衡”期间或之后,您不需要执行任何证书配置即可创建此TLS连接。

注意:

自签名证书是一个占位符,用于促进HTTPS通信,并且不是来自受信任的证书颁发机构。为了增加安全性,我们建议使用由受信任的证书颁发机构签名的证书。

若要使用来自其他证书颁发机构的证书,例如来自商业颁发机构的已签名证书,必须配置Workload Balancing和Citrix Hypervisor才能使用该证书。

默认情况下,Citrix Hypervisor在建立到Workload Balancing的连接之前不会验证证书的身份。如果要配置Citrix Hypervisor检查指定的证书,请导出用于对证书签名的根证书。将该证书复制到Citrix Hypervisor中,并配置Citrix Hypervisor在连接到工作负载平衡时检查该证书。在此场景中,Citrix Hypervisor作为客户端,Workload Balancing作为服务器。

根据您的安全目标,您可以:

Citrix Hypervisor在允许Workload Balancing虚拟设备通过TLS连接到特定的证书之前,检查该证书是否存在。在这种情况下,真正的证书(带有私钥的证书)位于Workload Balancing服务器上。用于对其签名的证书位于Citrix Hypervisor池主机上。

注意:

证书验证是一种安全措施,旨在防止不必要的连接。负载均衡证书必须满足严格的要求,否则证书验证不成功。当证书验证失败时,Citrix Hypervisor不允许连接。

要使证书验证成功,必须将证书存储在Citrix Hypervisor期望在其中找到证书的特定位置。

配置Citrix Hypervisor验证自签名证书

通过在Citrix Hypervisor上配置Citrix Workload Balancing自签名证书的真实性后,才允许接入。

重要的是:

要验证Citrix Workload Balancing自签名证书,必须使用其主机名连接到Workload Balancing。要查找工作负载平衡主机名,请运行主机名命令。

配置Citrix Hypervisor验证自签名证书,步骤如下:

  1. 将自签名证书从Workload Balancing虚拟设备复制到池主机。Citrix工作负载平衡自签名证书存储在/etc/ssl/certs/server.pem。在master存储池上执行如下命令:

    scp root@ < wlb-ip >: / etc / ssl /组/服务器。pem。< !——NeedCopy >
  2. 如果您收到一条消息,说明的真实性wlb-ip不能建立,类型是的继续。

  3. 根据提示输入Workload Balancing虚拟设备root密码。将证书拷贝到当前目录。

  4. 安装证书在证书拷贝路径下,执行如下命令:

    Xe pool-certificate-install filename=server。pem < !——NeedCopy >
  5. 通过在pool master上运行以下命令来验证证书已正确安装:

    Xe pool-certificate-list 

    如果证书安装正确,则该命令的回显信息中包含导出的根证书。运行此命令将列出所有已安装的TLS证书,包括您安装的证书。

  6. 使用实例在master服务器上同步master服务器的证书到池中的所有服务器。

    Xe pool-certificate-sync 

    运行pool-certificate-sync主服务器上的命令将所有池服务器上的证书和证书吊销列表同步到主服务器。此操作确保池中的所有服务器使用相同的证书。

    该命令没有输出。然而,如果这一步没有成功,下一步就不能工作。

  7. 在连接“负载均衡”虚拟设备之前,指示Citrix Hypervisor验证证书。在master存储池上执行如下命令:

    Xe pool-param-set wlb-verify-cert=true uuid=uuid_of_pool 

    提示:

    按下选项卡键自动填充池的UUID。

  8. (可选)要验证此过程是否成功,请执行以下步骤:

    1. 要测试证书是否已同步到池中的其他服务器,请运行pool-certificate-list命令。

    2. 要测试Citrix Hypervisor是否设置为验证证书,请运行pool-param-get命令。param-name= wlb-verify-cert参数。例如:

      Xe pool-param-get param-name=wlb-verify-cert uuid=uuid_of_pool 

配置Citrix Hypervisor验证证书颁发机构证书

您可以配置Citrix Hypervisor验证由受信任的证书颁发机构签名的证书。

对于受信任的颁发机构证书,Citrix Hypervisor需要导出证书或证书链(中间证书和根证书).pem包含公钥的格式。

如果希望工作负载平衡使用受信任的权威机构证书,请执行以下任务:

  1. 从证书颁发机构获取已签名的证书

  2. 指定并应用新的证书

  3. 导入证书链到证书池

在开始这些任务之前,请确保:

  • 您知道Citrix Hypervisor池主机的IP地址。

  • Citrix Hypervisor可以解析负载均衡主机名。(例如,您可以尝试从Citrix Hypervisor控制台ping工作负载平衡FQDN,以获取池主机。)

从证书颁发机构获取已签名的证书

要从证书颁发机构获取证书,必须生成证书签名请求(CSR)。在Workload Balancing虚拟设备上,创建一个私钥,并使用该私钥生成CSR。

指定通用名称的准则

您在创建CSR时指定的通用名称(CN)必须与工作负载平衡虚拟设备的FQDN完全匹配。还必须与FQDN或IP地址匹配地址方框连接到WLB服务器对话框。

为确保名称匹配,请使用以下指导原则之一指定通用名称:

  • 为证书的通用名称指定与中指定的相同信息连接到WLB服务器对话框。

    例如,如果您的工作负载平衡虚拟设备命名为wlb-vpx.yourdomain,指定wlb-vpx.yourdomain连接到WLB服务器对话和提供wlb-vpx.yourdomain作为通用名称创建CSR。

  • 如果通过IP地址将池连接到工作负载平衡,请使用FQDN作为通用名称,并使用IP地址作为主题备选名称(SAN)。然而,这种方法可能并不适用于所有情况。

创建私钥文件

在Workload Balancing虚拟设备上,完成以下步骤:

  1. 创建私钥文件:

    Openssl genrsa -des3 -out私钥。Pem 2048 
  2. 删除密码:

    Openssl rsa -in privatekeyPem -out privatekey.no . Pem 

注意:

如果您输入的密码不正确或不一致,您可能会收到一些提示用户界面错误的消息。可以忽略该提示信息,重新执行该命令创建私钥文件。

生成证书签名请求

在Workload Balancing虚拟设备上,完成以下步骤:

  1. 使用私钥创建证书签名请求(CSR):

    Openssl req -new -key privatekey.no .pem -out CSR 
  2. 按照提示提供生成CSR所需的信息:

    国家的名字。输入您所在国家/地区的TLS证书国家代码。例如,CA代表加拿大,JM代表牙买加。您可以在web上找到TLS证书国家代码的列表。

    州或省名(全称)。输入池所在的州或省。例如,马萨诸塞州或阿尔伯塔省。

    地方的名字。游泳池所在城市的名称。

    组织名称。你的公司或组织的名称。

    组织单位名称。输入部门名称。该字段是可选的。

    普通的名字。输入工作负载平衡服务器的FQDN。此值必须与连接到负载均衡的池的名称匹配。有关更多信息,请参见指定通用名称的准则

    电子邮件地址。该电子邮件地址在生成证书时包含在证书中。

  3. 提供可选属性或单击Enter以跳过提供此信息。

    CSR请求保存在当前目录中并命名企业社会责任

  4. 通过在负载平衡设备控制台中运行以下命令,在控制台窗口中显示CSR:

    Cat CSR 
  5. 复制整个CSR并使用它向证书颁发机构请求证书。

指定并应用新的证书

使用此过程可指定工作负载平衡使用来自证书颁发机构的证书。这个过程安装根证书和(如果有的话)中间证书。

要指定新的证书,请完成以下步骤:

  1. 下载已签名的证书、根证书,如果证书颁发机构有根证书,则下载来自证书颁发机构的中间证书。

  2. 如果您没有将证书直接下载到Workload Balancing虚拟设备,请使用以下方法之一将它们复制过来:

    • 在Windows电脑上,使用WinSCP或其他复制工具。

      对于主机名,可以输入IP地址,端口保持默认值。用户名和密码通常是root和您在配置期间设置的任何密码。

    • 从Linux计算机到工作负载平衡设备,使用SCP或其他复制实用程序。例如:

      scp root_ca。pem root@wlb-ip:/path_on_your_WLB 
  3. 在Workload Balancing虚拟设备上,将所有证书(根证书、中间证书(如果存在)和签名证书)的内容合并到一个文件中。可以使用如下命令:

    猫signed_cert。pem intermediate_ca。pem root_ca。Pem > server。pem < !——NeedCopy >
  4. 使用move命令重命名现有的证书和密钥:

    mv /etc/ssl/certs/server.pem /etc/ssl/certs/server.mv /etc/ssl/cert /server. pem关键/etc/ssl/certs/server.key_orig < !——NeedCopy >
  5. 复制合并后的证书:

    mv服务器。pem /etc/ssl/certs/server.pem < !——NeedCopy >
  6. 复制之前创建的私钥:

    Mv privatekey.nop.pem /etc/ssl/cert /server. pem关键< !——NeedCopy >
  7. 使私钥仅由根用户可读。使用修改文件权限命令修复权限。

    Chmod 600 /etc/ssl/certs/server。关键< !——NeedCopy >
  8. 重新启动stunnel

    杀死stunnel stunnel 

导入证书链到证书池

获取证书后,将证书导入到Citrix Hypervisor池master中。同步池中的服务器以使用这些证书。然后配置Citrix Hypervisor在每次负载均衡连接服务器时检查证书的身份和有效性。

  1. 将已签名的证书、根证书以及(如果证书颁发机构有)中间证书从证书颁发机构复制到Citrix Hypervisor池主服务器上。

  2. 在池主服务器上安装根证书:

    Xe pool-certificate-install filename=root_ca。pem < !——NeedCopy >
  3. 如果适用,在池主机上安装中间证书:

    Xe pool-certificate-install filename=intermediate_ca。pem < !——NeedCopy >
  4. 通过在池主服务器上运行以下命令来验证两个证书是否正确安装:

    Xe pool-certificate-list 

    执行此命令将列出所有已安装的TLS证书。如果证书安装成功,它们将出现在此列表中。

  5. 将master池中的证书同步到该池中的所有服务器。

    Xe pool-certificate-sync 

    运行pool-certificate-sync主端命令将所有池服务器上的证书和证书撤销列表同步到主端。此操作确保池中的所有服务器使用相同的证书。

  6. 在连接到负载均衡虚拟设备之前,指示Citrix Hypervisor验证证书。在master存储池上执行如下命令:

    Xe pool-param-set wlb-verify-cert=true uuid=uuid_of_pool 

    提示:

    按Tab键自动填充池的UUID。

  7. 如果在连接到WLB对话框,系统可能会提示您将池重新连接到工作负载平衡。

    为工作负载平衡设备指定FQDN地址连接到WLB对话框与证书的Common Name中显示的完全相同。输入FQDN,确保“Common Name”与Citrix Hypervisor连接的名称匹配。

故障排除

  • 如果配置证书验证后,该池无法连接到Workload Balancing,请关闭证书验证后,检查该池是否可以连接。可以使用命令Xe pool-param-set wlb-verify-cert=false uuid=uuid_of_pool禁用证书验证。如果它可以在关闭验证的情况下连接,则问题出在您的证书配置中。如果无法连接,则问题出在工作负载平衡凭证或网络连接上。

  • 一些商业证书颁发机构提供工具来验证正确安装的证书。如果这些过程无法帮助隔离问题,请考虑运行这些工具。如果这些工具需要指定TLS端口,请指定端口8012或在工作负载平衡配置期间设置的任何端口。

  • 如果WLB选项卡显示连接错误,则证书Common Name和工作负载平衡虚拟设备的名称之间可能存在冲突。工作负载平衡虚拟设备名称和证书的通用名称必须完全匹配。

有关更多信息,请参见故障排除

工作负载平衡证书