旧版SSL配置文件
注意: Citrix建议使用增强型配置文件而不是旧配置文件。有关增强型配置文件基础设施的信息,请参阅SSL配置文件基
重要:
将SSL配置文件绑定到SSL虚拟服务器。不要将迪泰配置文件绑定到SSL虚拟服务器。有关迪泰配置文件的信息,请参阅迪泰配置文件。
您可以使用SSL配置文件指定Citrix ADC如何处理SSL流量。配置文件是 SSL 实体(如虚拟服务器、服务和服务组)的 SSL 参数设置的集合,并提供了简单的配置和灵活性。您不仅限于配置一组全局参数。您可以创建多个全局参数集(配置文件),并将不同的集分配给不同的 SSL 实体。SSL 配置文件分为两类:
- 前端配置文件,包含适用于前端实体的参数。也就是说,它们适用于接收来自客户端的请求的实体。
- 后端配置文件,包含适用于后端实体的参数。也就是说,它们适用于向服务器发送客户端请求的实体。
与TCP或HTTP配置文件不同,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 | tls1 |
sendCloseNotify | - |
sessReuse, sessTimeout | - |
SNIEnable |
- |
ssl3 | - |
sslRedirect | - |
sslTriggerTimeout | - |
strictCAChecks | - |
tls1 tls11 tls12 | - |
* clearTextPort参数仅适用于SSL虚拟服务器。
如果您尝试设置不属于配置文件的参数,则会显示错误消息。例如,如果您尝试在后端配置文件中设置ClienTauth参数。
某些SSL参数(例如CRL内存大小,OCSP缓存大小,deData)不属于上述任何配置文件,因为这些参数独立于实体。
SSL配置文件支持以下操作:
- 添加——在Citrix ADC上创建SSL配置文件。指定配置文件是前端还是后端。前端是默认值。
- 设置-修改现有配置文件的设置。
- 设置——将指定参数设置为其默认值。如果未指定任何参数,则会显示一条错误消息。如果您在实体上取消设置配置文件,则该配置文件将从实体中解除绑定。
- 删除-删除配置文件。无法删除任何实体正在使用的配置文件。清除配置将删除所有实体。因此,配置文件也会被删除。
- 显示,显示Citrix ADC上可用的所有配置文件。如果指定了配置文件名称,则会显示该配置文件的详细信息。如果指定了实体,则会显示与该实体关联的配置文件。
使用CLI创建SSL配置文件
- 要添加SSL配置文件,请键入:
add ssl profile [-sslProfileType (BackEnd | FrontEnd)]
- 要修改现有配置文件,请键入:
设置SSL配置文件
- 要取消设置现有配置文件,请键入:
unset ssl profile [-dh] [-dhFile] [-dhCount] [-eRSA]…
- 要从实体取消设置现有配置文件,请键入:
unset ssl vserver -sslProfile
- 要删除现有配置文件,请键入:
Rm SSL配置文件
- 要显示现有配置文件,请键入:
Sh SSL配置文件
使用GUI创建SSL配置文件
导航到”系统“>”配置文件”,选择“SSL配置文件“选项卡,然后创建SSL配置文件。
对客户端证书验证启用更严格的控制
如果单个根CA颁发了有效的中间CA证书,Citrix ADC设备将接受这些证书。也就是说,如果只有根ca证书绑定到虚拟服务器,并且根ca验证随客户端证书一起发送的任何中间证书,则设备将信任证书链,并且握手成功。
但是,如果客户端在握手中发送了一连串证书,则只有当该证书绑定到SSL虚拟服务器时,才能使用CRL或OCSP响应程序验证中间证书。因此,即使其中一个中间证书被吊销,握手也是成功的。作为握手的一部分,SSL虚拟服务器发送绑定到它的CA证书的列的表。为了进行更严格的控制,您可以将SSL虚拟服务器配置为仅接受绑定到该虚拟服务器的一个CA证书已签署的证书。为此,必须启用绑定到虚拟服务器的SSL配置文件中的设置ClientAuthUseBoundCAChain
。如果绑定到虚拟服务器的CA证书之一尚未签署客户端证书,握手将失败。
例如,假设两个客户端证书,即clientcert1和clientcert2,分别由中间证书INT-CA-A和INT-CA-B签名。中间证书由根证书根CA签名。Int-CA-A和根ca绑定到SSL虚拟服务器。在默认情况下(禁用ClientAuthUseBoundCAChain),接受clientcert1和clientcert2。但是,如果启用了ClientauthuseBoundCachaon, Citrix ADC设备只接受clientcert1。
使用CLI启用对客户端证书验证的更严格的控制
在命令提示符处,键入:set ssl profile
使用GUI对客户端证书验证进行更严格的控制
- 导航到”系统“>”配置文件”,选择”SSL配置文件”选项卡,然后创建SSL配置文件,或选择现有配置文件。
- 选择”使用绑定CA链启用客户端身份验证”。