样书配置

创建用于上载 SSL 证书和证书密钥文件的样书

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

样书配置

本文档帮助您创建自己的样书-负载平衡虚拟服务器 (SSL),其中包含用于上载 SSL 证书和密钥文件的组件。此处提供的样书作为示例在选定的 NetScaler 实例上创建了基本的负载平衡虚拟服务器配置。该配置使用 SSL 协议。要使用此样书创建配置,必须提供虚拟服务器的名称和 IP 地址,选择负载平衡方法参数,然后上载虚拟服务器的证书文件和证书密钥文件,或者使用已经存在的证书文件和证书密钥文件存在于 NetScaler 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 

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

  • “ns”是指您在导入样本部分中指定的内置命名空间 netscaler.nitro.config 和版本 10.5 的前缀。
  • lbvserver是此命名空间中的内置样书。它对应于同名的 NetScaler NITROlbvserver资源。

第二个组件lbvserver-certificate-comp的类型为stlb::vserver-certs-binds。前缀是stlb指在样书的导入样书部分中指定的命名空间“com.citrix.adc.stylebook”和 1.0 版。如果“com.citrix.adc.stylebook”命名空间可以看作vserver-certs-binds是一个文件夹,那么该文件夹中的另一个样书(或文件)。位于命名空间“com.citrix.adc.样本”中的样本将作为 NetScaler ADM 的一部分发送。

用户定义的vserver-certs-binds样书使用的样书允许您轻松配置证书,方法是将证书和密钥文件上载到目标 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 

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

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

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

要创建上载文件的配置,请执行以下操作:

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

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

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

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

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

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

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

注意

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

部署配置包以上载 SSL 证书和密钥

注意

在 NetScaler ADM 中,以下默认样本(作为 NetScaler 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-ssldescription:"Thisstylebookdefinesaloadbalancingvirtualserverconfiguration."display-name:"LoadBalancingVirtualServer(SSL)"namespace:com.example.ssl.stylebooksschema-version:"1.0"version:"0.1"import-stylebooks:-namespace:netscaler.nitro.configprefix:nsversion:"10.5"-namespace:com.citrix.adc.stylebooksprefix:stlbversion:"1.0"parameters:-name:nametype:stringrequired:true-name:iptype:ipaddressrequired:true-name:lb-algtype:stringallowed-values:-ROUNDROBIN-LEASTCONNECTIONdefault:ROUNDROBIN-name:certificatelabel:"SSLCertificateFile"description:"ThefilenameoftheSSLcertificatefile"type:certfile-name:keylabel:"SSLCertificateKeyFile"description:"Thefilenameoftheservercertificate'sprivatekeyfile"type:keyfilecomponents:-name:my-lbvserver-comptype:ns::lbvserverproperties:name:$parameters.nameservicetype:SSLipv46:$parameters.ipport:443lbmethod:$parameters.lb-alg-name:lbvserver-certificate-comptype:stlb::vserver-certs-bindsdescription:Binds lbvserver with server certificateproperties:vserver-name:$ components.my-lbvserver-comp.properties.namecertificates:-cert-name:$parameters.name + "-lb-cert"cert-file:$parameters.certificatessl-inform:PEMkey-name:$parameters.name + "-key"key-file:$parameters.key

使用 NetScaler ADM API 创建配置包

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

查看在 NetScaler 实例上定义的对象

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

上载 SSL 证书后在实例中创建的对象

创建用于上载 SSL 证书和证书密钥文件的样书