NetScaler

使用SSL保护负载均衡的流量

NetScaler SSL卸载功能明显地提高了进行SSL事务的网站的性能。通过将cpu密集型的SSL加密和解密任务从本地web服务器卸载到设备,SSL卸载确保了web应用程序的安全交付,而不会在服务器处理SSL数据时造成性能损失。一旦SSL通信被解密,所有标准服务都可以处理它。SSL协议与各种类型的HTTP和TCP数据无缝地工作,并为使用这些数据的事务提供安全通道。

要配置SSL,必须首先启用它。然后,在设备上配置HTTP或TCP服务和SSL虚拟服务器,并将服务绑定到虚拟服务器。您还必须添加一个证书-密钥对,并将其绑定到SSL虚拟服务器。如果使用Outlook Web Access服务器,则必须创建启用SSL支持的操作和应用该操作的策略。SSL虚拟服务器拦截传入的加密流量,并使用协商好的算法对其解密。然后,SSL虚拟服务器将解密的数据转发到设备上的其他实体,以进行适当的处理。

有关SSL卸载的详细信息,请参见SSL卸载和加速

SSL配置任务顺序

要配置SSL,必须首先启用它。然后,必须在NetScaler设备上创建SSL虚拟服务器和HTTP或TCP服务。最后,您必须将有效的SSL证书和配置的服务绑定到SSL虚拟服务器。

SSL虚拟服务器拦截传入的加密流量,并使用协商好的算法对其解密。然后,SSL虚拟服务器将解密的数据转发到NetScaler设备上的其他实体,以进行适当的处理。

下面的流程图显示了配置基本SSL卸载设置的任务顺序。

图1。配置SSL卸载的任务顺序

图像

启用SSL卸载

配置SSL卸载前,请先启用SSL特性。您可以在不启用SSL特性的情况下在设备上配置基于SSL的实体,但是在启用SSL之前,它们将无法工作。

使用CLI使能SSL

在命令提示符下,键入以下命令启用SSL Offload并验证配置:

  • 启用SSL功能
  • 显示ns特性
> enable ns feature ssl Done > show ns feature feature Acronym Status ------- ------- ------ 1) Web Logging WL ON 2) operprotection SP OFF 3) Load Balancing LB ON…9) SSL卸载SSL ON 10)全局服务器负载均衡GSLB ON完成> < !——NeedCopy >

使用GUI启用SSL

遵循thesee步骤:

  1. 在导航窗格中展开“系统”,单击“设置”。
  2. 在详细信息窗格的“模式和功能”下,单击“更改基本功能”。
  3. 选中SSL卸载复选框,然后单击确定。
  4. 在启用/禁用特性中?消息框,单击“是”。

创建HTTP服务

设备上的服务表示服务器上的应用程序。配置完成后,服务将处于禁用状态,直到设备可以到达网络上的服务器并监视其状态。本主题介绍了创建HTTP服务的步骤。

注意:对于TCP流量,可以执行本主题和以下主题中的步骤,但需要创建TCP服务而不是HTTP服务。

该任务指导管理员通过CLI添加HTTP服务

在命令提示符下,输入以下命令来添加HTTP服务并验证配置:

  • add service ( . < serverName >) < serviceType > <端口>
  • 显示服务<名称>

例子

>添加服务SVC_HTTP1 10.102.29.18 HTTP 80做>显示服务SVC_HTTP1 SVC_HTTP1 (10.102.29.18:80) - HTTP状态:去年状态改变是在2009年7月15日06:13:05结婚以来最后的状态变化:0天,00:00:15.350服务器名称:10.102.29.18服务器ID: 0监控阈值:0马克斯康涅狄格州:0马克斯点播:0最大带宽:0来使用源IP:没有客户Keepalive (CKA):没有访问服务:没有TCP缓冲(TCPB):没有HTTP压缩(CMP):是的闲置超时:客户:180秒服务器:360秒Client IP: DISABLED Cacheable: NO SC: OFF SP: OFF Down state flush: ENABLED 1) Monitor Name: TCP -default state: UP Weight: 1 Probes: 4 Failed [Total: 0 Current: 0] Last response: Success - TCP syn+ack received。响应时间:N/A完成

通过GUI添加HTTP服务

遵循以下步骤:

  1. “流量管理”> SSL卸载>服务。
  2. 在详细信息窗格中,单击Add。
  3. 在“创建服务”对话框的“服务名称”、“服务器”和“端口”文本框中,键入服务名称、IP地址和端口(例如SVC_HTTP1、10.102.29.18和80)。
  4. 在“协议”列表中,选择服务的类型(例如HTTP)。
  5. 单击创建,然后单击关闭。配置的HTTP服务将显示在“服务”页面中。
  6. 通过选择服务并查看窗格底部的Details部分,验证您配置的参数是否正确配置。

添加基于SSL的虚拟服务器

在基本的SSL卸载设置中,SSL虚拟服务器拦截加密流量,解密它,并将明文消息发送到绑定到虚拟服务器的服务。将cpu密集型的SSL处理转移到设备上允许后端服务器处理更多的请求。

该任务指导管理员通过CLI添加ssl虚拟服务器。必备事项

在命令提示符下,输入以下命令创建基于ssl的虚拟服务器并验证配置:

  • add lb vserver [ ]
  • 显示lb vserver

注意:为了确保连接安全,在启用基于SSL的虚拟服务器之前,必须将有效的SSL证书绑定到该虚拟服务器。

例子

> add lb vserver vserver-SSL-1 SSL 10.102.29.50 443 Done > show lb vserver vserver vserver-SSL-1 vserver-SSL-1 (10.102.29.50:443) -SSL Type: ADDRESS State: DOWN[Certkey not bound] Last State change was at Tue Jun 16 06:33:08 2009 (+176 ms)上一次状态变化时间:0天,00:03:44.120生效状态:DOWN Client Idle Timeout: 180 sec DOWN State flush: ENABLED Disable Primary vserver On DOWN: DISABLED否绑定服务:0 (Total) 0 (Active)配置方法:LEASTCONNECTION模式:IP Persistence: NONE Vserver IP和端口插入:OFF Push: DISABLED Push Vserver: Push Multi Clients: NO Push Label Rule: Done 

使用GUI添加基于ssl的虚拟服务器

遵循以下步骤:

  1. 进入“流量管理”界面。> SSL卸载>虚拟服务器。
  2. 在详细信息窗格中,单击Add。
  3. 在“创建虚拟服务器(SSL Offload)”对话框的“名称”、“IP地址”和“端口”文本框中,输入虚拟服务器的名称、IP地址和端口(例如Vserver-SSL-1、10.102.29.50和443)。
  4. 2 .在“协议”列表中选择虚拟服务器的类型,例如“SSL”。
  5. 单击创建,然后单击关闭。
  6. 通过选择虚拟服务器并查看窗格底部的Details部分,验证您配置的参数是否正确配置。虚拟服务器被标记为DOWN,因为还没有将证书-密钥对和服务绑定到它。

注意:为了确保连接安全,在启用基于SSL的虚拟服务器之前,必须将有效的SSL证书绑定到该虚拟服务器。

将服务绑定到SSL虚拟服务器

对传入的数据进行解密后,SSL虚拟服务器将数据转发到您已绑定到虚拟服务器的服务。

设备和服务器之间的数据传输可以加密或以明文形式进行。如果设备和服务器之间的数据传输是加密的,那么整个事务从端到端都是安全的。有关配置系统以实现端到端安全的更多信息,请参见[s]SSL卸载和加速

该任务指导管理员通过CLI将服务与虚拟服务器绑定。必备事项

在命令提示符下,输入以下命令将服务绑定到SSL虚拟服务器并验证配置:

  • bind lb vserver .使用实例
  • 显示lb vserver

例子

> bind lb vserver vserver-SSL-1 SVC_HTTP1 Done > show lb vserver vserver vserver-SSL-1 vserver-SSL-1 (10.102.29.50:443) -SSL Type: ADDRESS State: DOWN[Certkey not bound] Last State change was at Tue Jun 16 06:33:08 2009 (+174 ms)上一次状态变化时间:0天,00:31:53.70 Effective State: DOWN Client Idle Timeout: 180 sec DOWN State flush: ENABLED Disable主vserver On DOWN: DISABLED否绑定服务:1 (Total) 0 (Active)配置方法:LEASTCONNECTION Mode: IP Persistence: NONE Vserver IP和端口插入:OFF Push: DISABLED Push Vserver: Push Multi Clients: NO Push Label Rule: 1) SVC_HTTP1 (10.102.29.18: 80) - HTTP State: DOWN Weight: 1 Done 

使用GUI将服务绑定到虚拟服务器

  1. 进入“流量管理”界面。> SSL卸载>虚拟服务器。
  2. 在详细信息窗格中,选择一个虚拟服务器,然后单击Open。
  3. 在Services选项卡的Active列中,选择要绑定到所选虚拟服务器的服务旁边的复选框。
  4. 单击OK。
  5. 验证窗格底部的Details部分中的“绑定服务数量”计数器是否根据绑定到虚拟服务器的服务数量而增加。

添加证书密钥对

SSL证书是SSL Key-Exchange和加密/解密过程中不可或缺的元素。该证书在SSL握手过程中用于建立SSL服务器的身份。您可以使用您在NetScaler设备上拥有的有效的现有SSL证书,也可以创建您自己的SSL证书。该设备支持最多4096位的RSA/DSA证书。

注意:Citrix建议您使用由受信任的证书颁发机构颁发的有效SSL证书。无效证书和自创建证书不兼容所有SSL客户端。

在将证书用于SSL处理之前,必须将其与相应的密钥配对。然后将证书密钥对绑定到虚拟服务器,并用于SSL处理。

通过CLI添加证书密钥对

在命令提示符下,输入以下命令创建证书密钥对并验证配置:

  • add ssl certKey -cert [-key ]
  • 显示sslcertkey <名称>

例子

>添加ssl certKey certKey - ssl -1 -cert ns-root。cert关键ns-root。key Done > show sslcertkey CertKey-SSL-1名称:CertKey-SSL-1状态:有效,过期天数:4811版本:3序列号:00签名算法:md5WithRSAEncryption发行者:C=US,ST=California,L=San Jose,O=Citrix ANG,OU=NS Internal,CN=de fault有效期Not Before: Oct 6 06:52:07 2006 GMT Not After: Aug 17 21:26:47 2022 GMT主题:C=US,ST=California,L=San Jose,O=Citrix ANG,OU=NS Internal,CN=d efault公钥算法:rsaEncryption公钥大小:1024 Done 

通过GUI方式添加证书密钥对

遵循以下步骤:

  1. “流量管理”> SSL >证书。
  2. 在详细信息窗格中,单击Add。
  3. 在“安装证书”对话框的“证书-密钥对名称”文本框中,输入要添加的证书密钥对的名称,例如“Certkey-SSL-1”。
  4. 在详细信息下,在证书文件名中,单击浏览(设备)以查找证书。证书和密钥都存储在设备上的/nsconfig/ssl/文件夹中。若要使用本地系统上的证书,请选择“本地”。
  5. 选择要使用的证书,然后单击Select。
  6. 在“私钥文件名”中,单击“浏览(设备)”以找到私钥文件。若要使用本地系统上存在的私钥,请选择“本地”。
  7. 选择要使用的键并单击Select。若要加密证书密钥对中使用的密钥,请在“密码”文本框中键入要用于加密的密码。
  8. 点击Install。
  9. 双击证书密钥对,在“证书详细信息”窗口中,验证参数已正确配置并保存。

将SSL证书密钥对绑定到虚拟服务器

在将SSL证书与其对应的密钥配对之后,必须将证书密钥对绑定到SSL虚拟服务器,以便可以将其用于SSL处理。安全会话需要在客户机计算机和设备上基于ssl的虚拟服务器之间建立连接。然后在虚拟服务器上对传入的流量进行SSL处理。因此,在设备上启用SSL虚拟服务器之前,您需要将有效的SSL证书绑定到SSL虚拟服务器。

该任务指导软件调测工程师通过CLI为虚拟服务器绑定SSL证书密钥对。必备事项

在命令提示符下,输入以下命令将SSL证书密钥对绑定到虚拟服务器并验证配置:

  • bind ssl vserver -certkeyName .使用实例
  • 显示SSL vserver

例子

> bind ssl vserver vserver - ssl -1 -certkeyName CertKey- ssl -1 Done > show ssl vserver vserver - ssl -1高级ssl配置vserver vserver - ssl -1: DH: DISABLED Ephemeral RSA: ENABLED Refresh Count: 0 Session Reuse: ENABLED Timeout: 120秒Cipher Redirect: ENABLED SSLv2 Redirect: ENABLED ClearText Port: 0 Client Auth: DISABLED ssl Redirect: DISABLED Non FIPS Cipher: DISABLED SSLv2: DISABLED SSLv3: ENABLED TLSv1: ENABLED 1) CertKey名称:CertKey- ssl -1服务器证书1)Cipher名称:默认说明:预定义密码别名完成

通过GUI将SSL证书密钥对绑定到虚拟服务器

遵循以下步骤:

  1. 进入“流量管理”界面。> SSL卸载>虚拟服务器。
  2. 选择要绑定证书密钥对的虚拟服务器,例如Vserver-SSL-1,单击“打开”。
  3. 在“配置虚拟服务器(SSL卸载)”对话框的“SSL设置”页签的“可选”下,选择要绑定到虚拟服务器的证书密钥对(例如Certkey-SSL-1),然后单击“添加”。
  4. 单击OK。
  5. 验证所选择的证书密钥对是否出现在“Configured”区域中。

配置Outlook web访问支持

如果在NetScaler设备上使用Outlook Web Access (OWA)服务器,则必须配置该设备在定向到OWA服务器的HTTP请求中插入一个特殊的报头字段FRONT-END-HTTPS: on,以便服务器生成URL链接https://而不是http://

注意:您可以只对基于http的SSL虚拟服务器和服务启用OWA支持。不能将其应用于基于tcp的SSL虚拟服务器和服务。

要配置OWA支持,请执行以下操作:

  • 创建一个SSL动作来启用OWA支持。
  • 创建SSL策略。
  • 将策略绑定到SSL虚拟服务器。

创建一个SSL动作来启用OWA支持

在启用Outlook Web Access (OWA)支持之前,必须创建一个SSL操作。SSL动作被绑定到SSL策略,并在传入数据匹配策略指定的规则时触发。

通过使用CLI创建一个SSL动作来启用OWA支持

在命令提示符下,键入以下命令来创建一个SSL操作以启用OWA支持并验证配置:

  • add ssl action -OWASupport ENABLED
  • show SSL动作 .

例子

> add ssl action action - ssl -OWA -OWASupport enabled Done > show ssl action action action - ssl -OWA Name: action - ssl -OWA Data insert action: OWASupport: enabled Done

通过使用GUI创建一个SSL动作来启用OWA支持

遵循以下步骤:

  1. 进入“流量管理> SSL >策略”界面。
  2. 在详细信息窗格的Actions选项卡上,单击Add。
  3. 在“创建SSL动作”对话框的“名称”文本框中,键入Action-SSL- owa。
  4. 在Outlook Web Access下,选择“启用”。
  5. 单击创建,然后单击关闭。
  6. 验证Action-SSL-OWA是否出现在SSL的行为页面。

创建SSL策略

SSL策略是通过使用策略基础设施创建的。每个SSL策略都绑定了一个SSL动作,当传入的流量匹配到策略中配置的规则时,将执行SSL动作。

该任务指导管理员通过CLI创建SSL策略

在命令提示符下,键入以下命令配置SSL策略并验证配置结果:

  • add ssl policy -rule -reqAction .使用实例
  • 显示SSL策略

例子

> add ssl policy policy - ssl -1 -rule ns_true -reqaction Action- ssl - owa Done > show ssl policy policy - ssl -1名称:policy - ssl -1规则:ns_true动作:Action- ssl - owa命中:0策略绑定以下实体1)优先级:0完成

通过GUI创建SSL策略

遵循以下步骤:

  1. 进入“流量管理> SSL >策略”界面。
  2. 在详细信息窗格中,单击Add。
  3. 在“创建SSL策略”对话框的“名称”文本框中,输入SSL策略的名称(例如Policy-SSL-1)。
  4. 在请求动作中,选择要与此策略关联的已配置SSL动作(例如,Action-SSL- owa)。ns_true通用表达式将该策略应用于所有成功的SSL握手流量。但是,如果您需要筛选特定的响应,您可以创建具有更高级别详细信息的策略。有关配置细粒度策略表达式的更多信息,请参见[SSL操作和策略](/en-us/netscaler/11-1/ SSL / SSL -actions-and-policies.html0。
  5. 在“命名表达式”中,选择内置通用表达式ns_true,然后单击“添加表达式”。表达式ns_true现在出现在“表达式”文本框中。
  6. 单击创建,然后单击关闭。
  7. 通过选择策略并查看窗格底部的Details部分,验证策略已正确配置。

将SSL策略绑定到SSL虚拟服务器

为Outlook Web Access配置SSL策略后,将该策略绑定到一个虚拟服务器,该服务器将拦截传入的Outlook流量。如果传入的数据匹配SSL策略中配置的任何规则,则触发该策略并执行与之关联的操作。

该任务指导管理员通过CLI将SSL策略绑定到SSL虚拟服务器。必备事项

在命令提示符下,输入以下命令将SSL策略绑定到SSL虚拟服务器并验证配置:

  • bind ssl vserver -policyName .使用实例
  • 显示SSL vserver

例子

> bind ssl vserver vserver - ssl -1 -policyName Policy- ssl -1 Done > show ssl vserver vserver - ssl -1高级vserver vserver - ssl -1 ssl配置:DH: DISABLED Ephemeral RSA: ENABLED刷新次数:0会话重用:ENABLED超时时间:120秒Cipher Redirect: ENABLED SSLv2 Redirect: ENABLED明文端口:0客户端认证:DISABLED ssl Redirect: DISABLED非FIPS Cipher: DISABLED SSLv2: DISABLED SSLv3: ENABLED TLSv1: ENABLED 1) CertKey名称:CertKey- ssl -1服务器证书1)策略名称:Policy-SSL-1优先级:0 1)加密名称:DEFAULT描述:预定义加密别名完成

该任务指导管理员通过GUI将SSL策略绑定到SSL虚拟服务器

遵循以下步骤:

  1. 进入“流量管理”界面。> SSL卸载>虚拟服务器。
  2. 在详细信息窗格中,选择虚拟服务器(例如,Vserver-SSL-1),然后单击Open。
  3. 在“配置虚拟服务器(SSL卸载)”对话框中,单击“插入策略”,然后选择要绑定到SSL虚拟服务器的策略。您可以选择双击Priority字段并键入一个新的优先级级别。
  4. 单击OK。