Application Delivery Management

创建样本以将 SSL 证书和证书密钥文件上传到 Citrix ADM

创建使用 SSL 协议的样书配置时,必须上载样书参数所需的 SSL 证书文件和证书密钥文件。样书允许您使用 Citrix ADM GUI 直接从本地系统上传 SSL 文件和密钥文件。您还可以使用 Citrix ADM API 上载已由 Citrix ADM 管理的证书文件和密钥文件。

样本配置

本文档帮助您创建自己的样本- 负载平衡虚拟服务器 (SSL),其中包含 用于上传 SSL 证书和密钥文件的组件。此处作为示例提供的样本在所选 Citrix ADC 实例上创建基本的负载平衡虚拟服务器配置。该配置使用 SSL 协议。要使用此样本创建配置,您必须提供虚拟服务器的名称和 IP 地址,选择负载平衡方法参数,然后上传虚拟服务器的证书文件和证书密钥文件,或者使用已经存在的证书文件和证书密钥文件存在于 Citrix ADM 中。这些内容在 parameters 部分中指定,如下所示:

parameters:
 -
  name: name
  type: string
  required: true
 -
  name: ip
  type: ipaddress
  required: true
 -
  name: lb-alg
  type: string
  allowed-values:
    - ROUNDROBIN
    - LEASTCONNECTION
  default: ROUNDROBIN
 -
  name: certificate
  label: "SSL Certificate File"
  description: "The file name of the SSL certificate file"
  type: certfile
 -
  name: key
  label: "SSL Certificate Key File"
  description: "The file name of the server certificate's private key file"
  type: keyfile
<!--NeedCopy-->

然后在样本的 components 部分中创建两个组件,如下所示。my-lbvserver-comp 组件的类型为 ns::lbvserver,其中:

  • “ns”是指代在 import-stylebooks 部分中指定的内置命名空间 netscaler.nitro.config 和版本 10.5 的前缀。
  • lbvserver 是此命名空间中的内置样书。它对应于同名的 Citrix ADC NITRO 负载平衡虚拟服务器资源。

第二个组件 “lbvser-证书-复合” 类型为 stlb። vser-证书-绑定。前缀“stlb”指代在样书的 import-stylebooks 部分中指定的命名空间 com.citrix.adc.stylebooks 和版本 1.0。如果 com.citrix.adc.stylebooks 命名空间可以视为文件夹,则 vserver-certs-binds 是该文件夹中的另一个样书(或文件)。位于命名空间 “com.citrix.adc.样本” 中的样本将作为 Citrix ADM 的一部分发送。

用户定义样本使用的 “v服务器cers-binds” 样本允许您通过将证书和密钥文件上传到目标 Citrix ADC 实例,并配置证书和密钥文件绑定到相应的虚拟服务器,轻松配置证书。此组件的属性是-lb 虚拟服务器的名称以及创建配置包时提供的 SSL 证书的名称。

components:
 -
  name: my-lbvserver-comp
  type: ns::lbvserver
  properties:
   name: $parameters.name
   servicetype: SSL
   ipv46: $parameters.ip
   port: 443
   lbmethod: $parameters.lb-alg
 -
  name: lbvserver-certificate-comp
  type: stlb::vserver-certs-binds
  description: Binds lbvserver with server certificate
  properties:
   vserver-name: $components.my-lbvserver-comp.properties.name
   certificates:
    -
     cert-name: $parameters.name + "-lb-cert"
     cert-file: $parameters.certificate
     ssl-inform: PEM
     key-name: $parameters.name + "-key"
     key-file: $parameters.key
<!--NeedCopy-->

使用 API 基于此类样本创建配置时,只使用文件名(而不是完整文件路径)。这些文件预计在 Citrix ADM 上的证书和密钥文件夹中已经可用。上载的 SSL 证书文件和 SSL 证书密钥文件分别存储在 Citrix ADM 中的目录 /var/mps/tenants/…/ns_ssl_certs 和 /var/mps/tenants/…/ns_ssl_keys 中。

创建配置以上传 SSL 文件

以下过程使用上述指定的样本中的 SSL 协议在所选 Citrix ADC 实例上创建基本负载平衡虚拟服务器配置。您可以使用此过程在 Citrix ADM 中上载 SSL 证书文件和证书密钥文件。

创建配置用于上载文件

  1. 在 Citrix ADM 中,导航到 应用程序 > 配置” > “样本。“ 样书 ” 页面显示 Citrix ADM 中可用的所有样书。

  2. 向下滚动并选择 负载平衡虚拟服务器 (SSL) 或在搜索字段中键入负载平衡虚拟服务器 (SSL) ,然后按 Enter 键。

  3. 单击样本面板中的 创建配置 链接。

    样本参数显示为用户界面页面,允许您输入此样本中定义的所有参数的值。

  4. 在基本负载平衡器设置部分输入负载平衡器的名称和虚拟 IP 地址。

  5. SSL 证书设置 部分,从本地存储文件夹中选择相应的文件。或者,您可以选择 Citrix ADM 本身上存在的文件。

  6. 选择需要在其上创建配置的目标 Citrix ADC 实例,然后单击 创建”。

注意

您还可以单击刷新图标,将 Citrix ADM 中最近发现的 Citrix ADC 实例添加到此窗口中的可用实例列表中。

本地化后的图片

注意

在 Citrix ADM 中,以下默认样本(作为 Citrix ADM 的一部分发送)使您能够通过上传 SSL 证书和密钥来创建 SSL 支持。

  • HTTP/SSL 负载平衡样本 (lb)
  • HTTP/SSL 负载平衡(具有监视器)样本 (lb-mon)
  • HTTP/SSL 内容交换应用程序(具有监视器)(cs-lb-mon)
  • 使用 CS、LB 和 SSL 功能的示例应用程序样本 (sample-cs-app)

您还可以创建自己的样本,以上面的样本中所述的同一方式利用 SSL 证书

构建您的样本

lb-vserver-ssl.yaml 文件的完整内容如下所示:

name: lb-vserver-ssl
description: "This stylebook defines a load balancing virtual server configuration."
display-name: "Load Balancing Virtual Server (SSL)"
namespace: com.example.ssl.stylebooks
schema-version: "1.0"
version: "0.1"

import-stylebooks:
 -
  namespace: netscaler.nitro.config
  prefix: ns
  version: "10.5"
 -
  namespace: com.citrix.adc.stylebooks
  prefix: stlb
  version: "1.0"

parameters:
 -
  name: name
  type: string
  required: true
 -
  name: ip
  type: ipaddress
  required: true
 -
  name: lb-alg
  type: string
  allowed-values:
    - ROUNDROBIN
    - LEASTCONNECTION
  default: ROUNDROBIN
 -
  name: certificate
  label: "SSL Certificate File"
  description: "The file name of the SSL certificate file"
  type: certfile
 -
  name: key
  label: "SSL Certificate Key File"
  description: "The file name of the server certificate's private key file"
  type: keyfile

components:
 -
  name: my-lbvserver-comp
  type: ns::lbvserver
  properties:
    name: $parameters.name
    servicetype: SSL
    ipv46: $parameters.ip
    port: 443
    lbmethod: $parameters.lb-alg
 -
  name: lbvserver-certificate-comp
  type: stlb::vserver-certs-binds
  description: Binds lbvserver with server certificate
  properties:
   vserver-name: $ components.my-lbvserver-comp.properties.name
   certificates:
    -
     cert-name: $parameters.name + "-lb-cert"
     cert-file: $parameters.certificate
     ssl-inform: PEM
     key-name: $parameters.name + "-key"
     key-file: $parameters.key
<!--NeedCopy-->

使用 Citrix ADM API 创建配置包

您还可以使用 Citrix ADM API 创建将证书和密钥文件上传到所选 Citrix ADC 实例的配置包。有关如何使用 API 的更多信息,请参阅如何使用 API 创建用于上传证书和密钥文件的配置。

查看在 Citrix ADC 实例上定义的对象

在 Citrix ADM 上创建样书配置包后,单击 查看创建的对象 以显示在目标 Citrix ADC 实例上创建的所有 Citrix ADC 对象

本地化后的图片

创建样本以将 SSL 证书和证书密钥文件上传到 Citrix ADM