Citrix ADC SSL配置文件验证参考设计
概述
Citrix ADC总结
Citrix ADC是一款一体化应用交付控制器,可使应用程序的运行速度提高五倍,降低应用程序拥有成本,优化用户体验,并通过以下方式确保应用程序始终可用:
- 高级L4-7负载均衡和流量管理
- 经过验证的应用程序加速,如HTTP压缩和缓存
- 集成式应用防火墙,保证应用安全
- 服务器卸载以显著降低成本并整合服务器
作为服务和应用交付领域无可争议的领导者,思杰ADC部署在全球数千个网络中,以优化、保护和控制所有企业和云服务的交付。Citrix ADC直接部署在web和数据库服务器前面,将高速负载平衡和内容交换、http压缩、内容缓存、SSL加速、应用程序流可见性和强大的应用程序防火墙集成到一个易于使用的集成平台中。通过端到端监控,将网络数据转换为可操作的业务智能,大大简化了满足sla的过程。Citrix ADC允许使用简单的声明性策略引擎定义和管理策略,而不需要编程专业知识。
Citrix ADC SSL配置文件概述
您可以使用SSL配置文件来指定Citrix ADC如何处理SSL流量。该配置文件是SSL实体(如虚拟服务器、服务和服务组)的SSL参数设置的集合,它提供了易于配置和灵活性。您不限于仅配置一组全局参数。您可以创建多个全局参数集(配置文件),并将不同的集合分配给不同的SSL实体。SSL配置文件分为两类:
- 前端配置文件,包含适用于前端实体的参数。也就是说,它们应用于从客户端接收请求的实体。
- 后端配置文件,包含适用于后端实体的参数。也就是说,它们应用于向服务器发送客户机请求的实体。
与TCP或HTTP配置文件不同,SSL配置文件是可选的。启用SSL配置文件(一个全局参数)后,所有SSL端点都继承默认配置文件。相同的概要文件可以跨多个实体重用。如果实体没有附加配置文件,则应用全局级别设置的值。对于动态学习的服务,应用当前的全局值。
与需要在单个SSL端点上配置SSL参数、密码和ECC曲线的替代方法相比,Citrix ADC上的SSL配置文件通过充当所有相关端点的SSL配置单点来简化配置管理。此外,配置问题,如密码重新排序和密码重新排序时的停机时间,可以通过使用SSL配置文件来解决。
SSL配置文件有助于在传统上无法设置这些参数和绑定的SSL端点上设置所需的SSL参数和密码绑定。SSL配置文件也可以在安全监视器上设置。
下表列出了每个配置文件的一部分参数:
前端配置文件 | 后端配置文件 |
---|---|
cipherRedirect, cipherURL | denySSLReneg |
clearTextPort * | encryptTriggerPktCount |
clientAuth, clientCert | nonFipsCiphers |
denySSLReneg | pushEncTrigger |
dh, dhFile, dhCount | pushEncTriggerTimeout |
dropReqWithNoHostHeader | pushFlag |
encryptTriggerPktCount | quantumSize |
eRSA, eRSACount | serverAuth |
insertionEncoding | commonName |
nonFipsCiphers | sessReuse, sessTimeout |
pushEncTrigger | SNIEnable |
pushEncTriggerTimeout | ssl3 |
pushFlag | sslTriggerTimeout |
quantumSize | strictCAChecks |
redirectPortRewrite | TLS 1.0, TLS 1.1, TLS 1.2 |
sendCloseNotify | |
sessReuse, sessTimeout | |
SNIEnable | |
ssl3 | |
sslRedirect | |
sslTriggerTimeout | |
strictCAChecks | |
Tls1, tls11, tls12 |
* clearTextPort参数只适用于SSL虚拟服务器。
如果您尝试设置不属于配置文件的参数(例如,如果您尝试在后端配置文件中设置clientAuth参数),则会出现错误消息。
一些SSL参数,如CRL内存大小、OCSP缓存大小、undeffaction控制和undeffaction数据,不是上述任何配置文件的一部分,因为这些参数独立于实体。这些参数出现在流量管理> SSL > SSL高级设置。
SSL配置文件支持以下操作:
add -在Citrix ADC上创建SSL配置文件。指定配置文件是前端还是后端。前端是默认的。
set -修改现有配置文件的设置。
unset将指定的参数设置为默认值。如果不指定任何参数,则会出现错误消息。在实体上取消配置配置文件,则该配置文件将与实体解除绑定。
remove—删除配置文件。不能删除任何实体正在使用的配置文件。清空配置将删除所有实体。因此,配置文件也会被删除。
绑定—将配置文件绑定到Vserver。
unbind—解除配置文件与Vserver的绑定。
显示-显示Citrix ADC上可用的所有配置文件。如果指定了配置文件名称,则显示该配置文件的详细信息。如果指定实体,则显示与该实体关联的配置文件。
SSL配置文件用例
SSL默认配置文件
Citrix ADC设备有两个内置的默认配置文件-
ns_default_ssl_profile_frontend -所有SSL类型虚拟服务器和内部服务的默认前端配置文件。
ns_default_ssl_profile_backend—SSL类型服务、服务组和安全监视器的默认后端配置文件。
创建的任何新端点都会绑定相应的默认SSL配置文件。
可以更改默认SSL配置文件的SSL参数和密码。这确保了客户可以在被相应端点引用的一点上更改设置和绑定。
重要的是:
升级软件前保存配置,启用默认配置文件。
将软件升级到支持增强的配置文件基础结构的版本,然后启用默认配置文件。根据具体的部署,您可以采用两种方法中的一种。如果您的部署具有跨端点的通用SSL配置,请参见用例1。如果您的部署具有较大的SSL配置,并且SSL参数和密码在端点之间不常见,请参见用例2。
升级软件后,如果启用了配置文件,则无法撤销更改。即不能禁用该配置文件。因此,逆转更改的唯一方法是使用旧配置重新启动。
注意:单个操作(启用默认配置文件或设置ssl参数-defaultProfile ENABLED)启用(绑定)默认前端配置文件和默认后端配置文件。
注意:从v11.1开始,默认SSL配置文件现在可用于集群
要使用Citrix ADC命令行保存配置,在命令提示符下输入:
>save config >shell root@ns# CD /nsconfig root@ns# cp ns.conf ns.confNS < currentreleasenumber > < currentbuildnumber > < !——NeedCopy >
用例1
启用默认配置文件后,它们将绑定到所有SSL端点。默认配置文件是可编辑的。如果您的部署使用大多数默认设置,只更改少数参数,则可以编辑默认配置文件。更改立即反映在所有端点上。
以下流程图说明了必须执行的步骤:
有关软件升级的信息,请参见升级系统软件。
- 通过使用Citrix ADC命令行或GUI启用默认配置文件。
- 在命令行中输入:set ssl parameter -defaultProfile ENABLED
- 如果您更喜欢使用GUI,请导航到流量管理> SSL >修改SSL高级设置,向下滚动,并选择启用默认配置文件。
- (可选)手动修改默认配置文件中的任何设置。
- 在命令行输入:
设置SSL配置文件
然后是要修改的参数。 - 如果您更喜欢使用GUI,请导航到系统>配置文件。在“SSL配置文件”中选择一个配置文件,单击编辑。
- 在命令行输入:
用例2
如果您的部署使用大多数SSL实体的特定设置,您可以运行一个脚本,自动为每个端点创建自定义配置文件,并将它们绑定到端点。使用本节中详细介绍的过程来保留部署中所有SSL端点的SSL设置。升级软件后,下载并运行迁移脚本以捕获特定于ssl的更改。运行此脚本的输出是一个批处理文件。启用默认配置文件,然后应用批处理文件中的命令。升级后SSL配置迁移示例请参见附录。
以下流程图说明了必须执行的步骤:
有关软件升级的信息,请参见升级系统软件。
下载并运行一个脚本来捕获特定于ssl的更改。除了其他迁移活动之外,该脚本还分析旧的ns.conf文件,并将任何特殊设置(默认设置除外)从SSL端点配置移动到自定义配置文件。升级后必须启用默认配置文件,才能应用配置更改。
注意:
在运行迁移脚本时,您可以选择自动生成概要文件名称,或者您可以交互式地提示用户输入概要文件名称。迁移脚本检查以下内容并相应地创建pro文件。
- 具有默认设置和类似密码和密码组设置的端点:脚本创建一个配置文件。
- 具有默认设置和不同密码组或不同密码组优先级的端点:在每种情况下,脚本都会创建一个用户定义的密码组,将其绑定到一个配置文件,并将每个配置文件绑定到相应的端点。
- 具有默认设置和默认密码的端点:将默认配置文件绑定到端点。
要运行脚本,在命令提示符下输入:
./default_profile_script /nsconfig/ns.conf -b > <输出文件名> '
您必须从存储脚本的文件夹中运行此命令。
通过使用Citrix ADC命令行或GUI启用默认配置文件。
- 在命令行输入:
设置ssl参数-defaultProfile ENABLED
- 如果您更喜欢使用GUI,请导航到流量管理> SSL >修改SSL高级设置,向下滚动,并选择启用默认配置文件。
- 在命令行输入:
自定义SSL配置文件
除了默认SSL配置文件外,客户还可以为特定用例创建自定义的前端和后端SSL配置文件。在某些情况下,不同的应用程序需要不同的密码和SSL参数。在这些情况下,客户可以创建新的概要文件并将其绑定到端点。
在一个系统中可以创建的自定义配置文件的数量没有上限。
访问SSL配置文件有关如何启用SSL配置文件等信息的文档。
SSL前端配置文件
前端SSL配置文件与SSL类型的虚拟服务器和内部服务相关。前端配置文件适用于负载均衡虚拟服务器、内容交换虚拟服务器、AAA-TM虚拟服务器和网关VPN虚拟服务器中所有SSL类型的虚拟服务器。
以下类型的虚拟服务器支持前端配置文件—SSL、SSL_TCP、SIP_SSL、SSL_FIX和SSL_DIAMETER。
所有内部服务都支持前端配置文件。
SSL后端配置文件
后端配置文件与SSL类型的服务、服务组和安全监视器相关。以下类型的服务和服务组支持后端配置文件—SSL、SSL_TCP、SIP_SSL、SSL_FIX、SSL_DIAMETER。
某些监控器可以配置为通过安全连接检查后端服务器的运行状况。可以将SSL配置文件绑定到此类监视器,以配置SSL参数和密码。这些监视器包括- HTTP、HTTP- ecv、HTTP- inline、TCP和TCP- ecv。