创建 StyleBook 以上传 SSL 证书和证书密钥文件

Last published : Oct 06, 2026
创建使用 SSL 协议的 StyleBook 配置时,必须根据 StyleBook 参数的要求上传 SSL 证书文件和证书密钥文件。StyleBook 允许您通过使用 NetScaler Console GUI 直接从本地系统上传 SSL 文件和密钥文件。您还可以使用 NetScaler Console API 上传 NetScaler Console 已管理的证书文件和密钥文件。

StyleBook 配置

本文档帮助您创建自己的 StyleBook - 负载平衡虚拟服务器 (SSL) 其中包含用于上传 SSL 证书和密钥文件的组件。此处提供的 StyleBook 示例在选定的 NetScaler 实例上创建了一个基本的负载平衡虚拟服务器配置。该配置使用 SSL 协议。要使用此 StyleBook 创建配置,您必须提供虚拟服务器的名称和 IP 地址,选择负载平衡方法参数,并为虚拟服务器上传证书文件和证书密钥文件,或者使用 NetScaler Console 中已有的证书文件和证书密钥文件。这些参数在以下“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
 -
  name: passphrase
  label: "SSL Certificate Key Passphrase"
  description: "The password used to protect the certificate's private key file"
  type: password
然后在 StyleBook 的组件部分中创建两个组件。my-lbvserver-comp 组件的类型为 ns::lbvserver,其中:
  • “ns”是前缀,指代您在 import-stylebooks 部分中指定的内置命名空间 netscaler.nitro.config 和版本 10.5。
  • lbvserver 是此命名空间中的内置 StyleBook。它对应于同名的 NetScaler NITRO lbvserver 资源。
第二个组件 lbvserver-certificate-comp 的类型为 stlb::vserver-certs-binds。前缀 stlb 指代 StyleBook 的 import-stylebooks 部分中指定的命名空间“com.citrix.adc.stylebooks”和版本 1.0。如果可以将“com.citrix.adc.stylebooks”命名空间视为一个文件夹,则 vserver-certs-binds 是该文件夹中的另一个 StyleBook(或文件)。位于命名空间“com.citrix.adc.stylebooks”中的 StyleBook 作为 NetScaler Console 的一部分提供。
用户定义的 StyleBook 使用的 vserver-certs-binds StyleBook 允许您通过将证书和密钥文件上传到目标 NetScaler 实例,以及通过配置证书和密钥文件与相应虚拟服务器的绑定来轻松配置证书。此组件的属性是 - 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
     cert-password: $parameters.passphrase
当您使用 API 从此类 StyleBook 创建配置时,只需使用文件名(而不是完整文件路径)。这些文件应已在 NetScaler Console 上的证书和密钥文件文件夹中可用。上传的 SSL 证书文件存储在 NetScaler Console 的 /var/mps/tenants/.../ns_ssl_certs 目录中,SSL 证书密钥文件存储在 NetScaler Console 的 /var/mps/tenants/.../ns_ssl_keys 目录中。

创建用于上传 SSL 文件的配置

以下过程使用 StyleBook 示例中的 SSL 协议,在选定的 NetScaler 实例上创建基本的负载平衡虚拟服务器配置。您可以使用此过程在 NetScaler Console 中上传 SSL 证书文件和证书密钥文件。
要创建用于上传文件的配置:
  1. 在 NetScaler Console 中,导航到 Applications > Configuration > StyleBooks。StyleBooks 页面显示 NetScaler Console 中所有可用的 StyleBook。
  2. 向下滚动并选择 Load Balancing Virtual Server (SSL),或在搜索字段中键入 Load Balancing Virtual Server (SSL),然后按 Enter 键。
  3. 在 StyleBook 面板中点击 创建配置。
    StyleBook 参数显示为一个用户界面页面,您可以在其中输入此 StyleBook 中定义的所有参数的值。
  4. 在基本负载均衡器设置部分中输入负载均衡器的名称和虚拟 IP 地址。
  5. 在 SSL 证书设置 中,从本地存储文件夹中选择相应的文件。您也可以选择 NetScaler Console 上存在的文件。
  6. 选择必须创建配置的目标 NetScaler 实例,然后点击 创建。
注意:
您还可以点击刷新图标,将 NetScaler Console 中最近发现的 NetScaler 实例添加到此窗口中可用的实例列表中。
在 NetScaler Console 中,以下作为 NetScaler Console 一部分提供的默认 StyleBook 允许您通过上传 SSL 证书和密钥来创建 SSL 支持。
  • HTTP/SSL 负载均衡 StyleBook (lb)
  • HTTP/SSL 负载均衡(带监视器)StyleBook (lb-mon)
  • HTTP/SSL 内容切换应用程序(带监视器)(cs-lb-mon)
  • 使用 CS、LB 和 SSL 功能的示例应用程序 StyleBook (sample-cs-app)

构建您的 StyleBook

文件 lb-vserver-ssl.yaml 的完整内容如下所示:
name: lb-vserver-ssl
namespace: com.example.ssl.stylebooks
version: "0.1"
description: "This stylebook defines a load balancing virtual server configuration."
display-name: "Load Balancing Virtual Server (SSL)"
schema-version: "1.0"

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
 -
  name: key
  label: "SSL Certificate Key Passphrase"
  description: "The password used to protect the certificate's private key file"
  type: password

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
     cert-password: $parameters.passphrase
使用 NetScaler Console API 创建配置包:
您还可以使用 NetScaler Console API 创建配置包,将证书和密钥文件上传到选定的 NetScaler 实例。有关如何使用 API 的更多信息,请参阅如何使用 API 创建配置以上传证书和密钥文件。

查看 NetScaler 实例上定义的对象

在 NetScaler Console 上创建 StyleBook 配置(配置包)后,单击查看已创建对象以显示目标 NetScaler 实例上创建的所有 NetScaler 对象
上传 SSL 证书后在实例中创建的对象