Citrix ADC

使用SSL保护负载平衡通信

Citrix ADC SSL卸载功能可明显改进执行SSL事务的网络站点的性能。通过将CPU密集型SSL加密和解密任务从本地Web服务器卸载到设备,SSL卸载功能可确保网络应用程序能够安全交付,且不会在服务器处理SSL数据时导致性能下降。解密SSL通信之后,所有标准服务都可以对其进行处理。SSL协议可以无缝运用于各种类型的 HTTP 和 TCP 数据,为使用此类数据的事务提供安全通道。

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

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

SSL配置任务的顺序

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

SSL虚拟服务器可拦截传入的加密通信,并使用协商确定的算法对其进行解密。然后,SSL虚拟服务器将解密的数据转发到Citrix ADC设备上的其他实体,以进行相应的处理。

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

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

SSL流程图

启用SSL卸载

首先启用SSL功能。虽然无需启用SSL功能即可在设备上配置基于SSL的实体,但必须启用SSL,这些实体才能运行。

使用CLI启用SSL

在命令提示窗口中,键入以下命令以启用SSL卸载并验证配置:

- enable ns feature SSL - show ns feature 

示例:

> enable ns feature ssl Done > show ns feature feature Acronym Status ------- ------- ------ 1) Web Logging WL ON 2) SurgeProtection SP OFF 3) Load Balancing LB ON…10)全局服务器负载均衡GSLB ON。完成> < !——NeedCopy >

使用GUI启用SSL

请按照以下步骤进行操作:

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

创建HTTP服务

设备上的服务表示服务器上的应用程序。配置后,服务处于禁用状态,直到设备可访问网络中的服务器并监视其状态。本主题包含创建HTTP服务的步骤。

注意:对于TCP流量,请执行以下过程,但请创建TCP服务而非HTTP服务。

使用CLI添加HTTP服务

在命令提示窗口中,键入以下命令以添加HTTP服务并验证配置:

- add service  ( | )   - show service  

示例:

>添加服务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秒客户机IP:禁用缓存:没有SC:从SP:沿着州冲洗:1)启用监控名称:tcp-default状态:重量:1调查:4失败(当前总:0:0)最后的反应:成功- TCP syn+ack接收。响应时间:未完成

使用GUI添加HTTP服务

请按照以下步骤进行操作:

  1. 导航到交通管理(流量管理)> SSL卸载(SSL卸载)>服务(服务)
  2. 在详细信息窗格中,单击添加(添加)。
  3. 创建服务(创建服务)对话框中,键入服务名称,IP地址和端口(例如SVC_HTTP1, 10.102.29.18和80)。
  4. 协议(协议)列表中选择服务类型,例如HTTP。
  5. 单击创建(创建),然后单击关闭(关闭)。此时服务(服务)页面中将显示您配置的HTTP服务。
  6. 选择该服务并查看窗格底部的细节(详细信息)部分,确认您配置的参数已正确配置。

添加基于SSL的虚拟服务器

在基本SSL卸载设置中,SSL虚拟服务器可拦截加密的通信,将其解密,并将明文消息发送到绑定到该虚拟服务器的服务。将CPU密集型SSL处理卸载到设备可使后端服务器能够处理更多请求。

使用CLI添加基于SSL的虚拟服务器

在命令提示窗口中,键入以下命令以创建基于SSL的虚拟服务器并验证配置:

- add lb vserver   [ ] - show lb vserver  

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

示例:

>添加磅vserver vserver-SSL-1 SSL 10.102.29.50 443做>显示磅vserver vserver-SSL-1 vserver-SSL-1 (10.102.29.50:443) - SSL类型:地址状态:下降[Certkey决不能]去年状态变化在星期二2009年6月16日06:33:08 (+ 176 ms)自去年状态变化:0天,00:03:44.120有效状态:客户端闲置超时:180秒Down state flush:启用禁用主Vserver On Down:禁用否of Bound Services: 0 (Total) 0 (Active) Configured Method: LEASTCONNECTION Mode: IP Persistence: NONE Vserver IP and Port insertion: OFF Push: DISABLED Push Vserver: Push Multi client: NO Push Label Rule: Done 

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

请按照以下步骤进行操作:

  1. 导航到交通管理(流量管理)> SSL卸载(SSL卸载)>虚拟服务器(虚拟服务器)
  2. 在详细信息窗格中,单击添加(添加)。
  3. 创建虚拟服务器(SSL卸载)(创建虚拟服务器(SSL卸载))中,键入虚拟服务器的名称,IP地址和端口。
  4. 协议(协议)列表中选择虚拟服务器的类型,例如SSL。
  5. 单击创建(创建),然后单击关闭(关闭)。
  6. 选择虚拟服务器并查看窗格底部的细节(详细信息)部分,确认您配置的参数已正确配置。该虚拟服务器标记为“向下”(关闭),因为尚未对其绑定证书密钥对和服务。

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

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

解密传入数据之后,SSL虚拟服务器会将数据转发到与该虚拟服务器绑定的服务。

可以加密设备与服务器之间的数据传输,也可通过明文方式传输。如果设备与服务器之间的数据传输已加密,则端到端的整个事务将是安全的。有关为端到端安全配置系统的更多信息,请参阅SSL卸载和加速

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

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

- bind lb vserver   - show lb vserver  

例如

>绑定磅vserver vserver-SSL-1 SVC_HTTP1做>显示磅vserver vserver-SSL-1 vserver-SSL-1 (10.102.29.50:443) - SSL类型:地址状态:下降[Certkey决不能]去年状态变化在星期二2009年6月16日06:33:08 (+ 174 ms)自去年状态变化:0天,00:31:53.70有效状态:客户端闲置超时:180秒下状态刷新:ENABLED禁用主Vserver On Down:禁用否of Bound Services: 1 (Total) 0 (Active) Configured Method: LEASTCONNECTION Mode: IP Persistence: NONE Vserver IP and Port insertion: OFF Push: DISABLED Push Vserver: Push Multi client: NO Push Label Rule: 1) SVC_HTTP1 (10.102.29.18: 80) - HTTP State: DOWN Weight: 1 Done 

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

  1. 导航到交通管理(流量管理)> SSL卸载(SSL卸载)>虚拟服务器(虚拟服务器)
  2. 在详细信息窗格中,选择虚拟服务器,然后单击开放(打开)。
  3. 服务(服务)选项卡上的活跃的(活动)列中,选中要绑定到所选虚拟服务器的服务旁边的复选框。
  4. 单击好吧(确定)。
  5. 确认窗格底部细节(详细信息)部分中数量的绑定服务(绑定服务数)计数器按绑定到虚拟服务器的服务数量递增。

添加证书密钥对

SSL证书是SSL密钥交换和加密——解密过程不可或缺的元素。该证书在SSL握手过程中用于创建SSL服务器的标识。可以使用Citrix ADC设备上现有的有效SSL证书,也可以创建您自己的SSL证书。该设备支持最多4096位的RSA证书。

支持仅包含以下曲线的ECDSA证书:

  • prime256v1 (ADC上的P_256)
  • secp384r1 (ADC上的P_384)
  • secp521r1 (ADC上的P_521;仅在VPX上支持)
  • secp224r1 (ADC上的P_224;仅在VPX上支持)

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

必须首先将证书与其相应的密钥进行配对,然后才能将其用于SSL处理。然后,证书密钥对将绑定到虚拟服务器,用于SSL处理。

使用CLI添加证书密钥对

注意:有关创建ECDSA证书密钥对的信息,请参阅创建ECDSA证书密钥对

在命令提示窗口中,键入以下命令以创建证书密钥对并验证配置:

- add ssl certKey  -cert  [-key ] - show sslcertkey  

示例:

> add ssl certKey certKey - ssl -1 -cert ns-root。cert关键ns-root。主要做>显示sslcertkey CertKey-SSL-1名称:CertKey-SSL-1状态:有效,天过期:4811版:3序列号:00签名算法:md5WithRSAEncryption发行人:C =我们,加州圣= L =圣何塞,O = Citrix盎,OU = NS内部,CN = de错有效性不是:格林尼治时间2006年10月6日06:52:07不是后:格林尼治时间2022年8月17日21:26:47主题:C=US,ST=California,L=San Jose,O=Citrix ANG,OU=NS Internal,CN=d efault公钥算法:rsaEncryption公钥大小:1024 Done 

使用GUI添加证书密钥对

请按照以下步骤进行操作:

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

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

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

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

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

- bind ssl vserver  - certkeyname  - show ssl vserver  

示例:

> bind ssl vserver vserver - ssl -1 -certkeyName CertKey-SSL-1 Done > show ssl vserver vserver - ssl -1 Advanced ssl configuration for vserver vserver - ssl -1: DH: DISABLED Ephemeral RSA: ENABLED Refresh Count: 0 Session Reuse: ENABLED Timeout: 120 seconds 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 Name: CertKey-SSL-1 Server Certificate 1) Cipher Name: DEFAULT Description:预定义Cipher Alias Done 

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

请按照以下步骤进行操作:

  1. 导航到交通管理(流量管理)> SSL卸载(SSL卸载)>虚拟服务器(虚拟服务器)
  2. 选择要绑定证书密钥对的虚拟服务器(例如Vserver-SSL-1),然后单击打开(打开)。
  3. 配置虚拟服务器(SSL卸载)(配置虚拟服务器(SSL卸载))对话框中,从SSL设置(SSL设置)选项卡上的可用(可用)下,选择要绑定到虚拟服务器的证书密钥对。然后单击添加
  4. 单击好吧(确定)。
  5. 确认您选择的证书密钥对显示在配置(已配置)区域中。

配置对Outlook Web Access的支持

如果您在Citrix ADC设备上使用Outlook Web Access (OWA)服务器,则必须配置此设备,以便将一个特殊标头字段FRONT-END-HTTPS:在插入到定向至OWA服务器的HTTP请求中,从而使这些服务器生成https://而非http://类型的URL链接。

注意:只能为基于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 action  

示例:

> add ssl action action - ssl -OWA -OWASupport enabled Done——NeedCopy >

使用GUI创建SSL操作以启用OWA支持

请按照以下步骤进行操作:

  1. 导航到交通管理(流量管理)> SSL >政策(策略)
  2. 在详细信息窗格中,单击行动(操作)选项卡上的添加(添加)。
  3. 创建SSL操作(创建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  - show ssl policy  

示例:

> add ssl policy policy - ssl -1 -rule ns_true -reqaction Action- ssl - owa Done > show ssl policy policy - ssl -1 Name: policy - ssl -1 Rule: ns_true Action: Action- ssl - owa Hits: 0 policy绑定到以下实体1)PRIORITY: 0 Done 

使用GUI创建SSL策略

请按照以下步骤进行操作:

  1. 导航到交通管理(流量管理)> SSL >政策(策略)
  2. 在详细信息窗格中,单击添加(添加)。
  3. 创建SSL策略(创建SSL策略)对话框的“名称”(名称)文本框中,键入SSL策略的名称(例如,Policy-SSL-1)。
  4. 请求操作(请求操作)中,选择要与此策略关联的已配置SSL操作,例如Action-SSL-OWA。ns_true正则表达式可将策略应用于所有成功的SSL握手通信。但是,要过滤特定的响应,可以使用更为详细的信息来创建策略。有关配置精细策略表达式的更多信息,请参阅SSL操作和策略。
  5. 命名表达式(命名表达式)下,选择内置的正则表达式ns_true,然后单击添加表情(添加表达式)。此时“表达式”(表达式)文本框中将出现表达式ns_true。
  6. 单击创建(创建),然后单击关闭(关闭)。
  7. 选择策略并查看窗格底部的细节(详细信息)部分,确认该策略配置正确。

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

为Outlook Web Access配置SSL策略后,将此策略绑定到将解析传入前景流量的虚拟服务器。如果传入数据与在SSL策略中配置的任何规则匹配,则将触发该策略并执行与其关联的操作。

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

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

- bind ssl vserver  - policyname  - show ssl vserver  

示例:

> bind ssl vserver vserver - ssl -1 -policyName Policy-SSL-1 Done > show ssl vserver vserver - ssl -1高级ssl配置vserver vserver - ssl: DH: DISABLED Ephemeral RSA: ENABLED Refresh Count: 0 Session Reuse: ENABLED Timeout: 120 seconds 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 Name: CertKey- ssl -1 Server Certificate 1) Policy Name: Policy- ssl -1 Priority: 0 1) Cipher Name: DEFAULT Description:预定义Cipher Alias Done 

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

请按照以下步骤进行操作:

  1. 导航到交通管理(流量管理)> SSL卸载(SSL卸载)>虚拟服务器(虚拟服务器)
  2. 在详细信息窗格中,选择虚拟服务器(例如Vserver-SSL-1),然后单击开放(打开)。
  3. 配置虚拟服务器(SSL卸载)(配置虚拟服务器(SSL卸载))对话框中,单击插入政策(插入策略),然后选择要绑定到SSL虚拟服务器的策略。也可以双击优先级(优先级)字段并键入新的优先级。
  4. 单击好吧(确定)。