Citrix ADC

旧版 SSL 配置文件

注意:

Citrix 建议使用增强型配置文件而不是旧配置文件。有关增强型配置文件基础结构的信息,请参阅SSL 配置文件基础结构

重要:

您必须将 SSL 配置文件绑定到 SSL 虚拟服务器。不要将 DTLS 配置文件绑定到 SSL 虚拟服务器。有关 DTLS 配置文件的信息,请参阅DTLS 配置文件

您可以使用 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 高速缓存大小、UndefAction 控制以及 UndefAction 数据)不属于上述任何配置文件,因为这些参数独立于实体。

SSL 配置文件支持以下操作:

  • 添加-在 Citrix ADC 上创建 SSL 配置文件。指定配置文件是前端还是后端。前端是默认值。
  • 设置-修改现有配置文件的设置。
  • Unset-将指定参数设置为其默认值。如果未指定任何参数,则会显示一条错误消息。如果您在实体上取消设置配置文件,则该配置文件将从实体中解除绑定。
  • 删除-删除配置文件。无法删除任何实体正在使用的配置文件。清除配置将删除所有实体。因此,配置文件也会被删除。
  • 显示-显示 Citrix ADC 上可用的所有配置文件。如果指定了配置文件名称,则会显示该配置文件的详细信息。如果指定了实体,则会显示与该实体关联的配置文件。

使用 CLI 创建 SSL 配置文件

  • 要添加 SSL 配置文件,请键入:
add ssl profile <name> [-sslProfileType ( BackEnd | FrontEnd )]
  • 要修改现有配置文件,请键入:
set ssl profile <name>
  • 要取消设置现有配置文件,请键入:
unset ssl profile <name> [-dh] [-dhFile] [-dhCount] [-eRSA]…
  • 要从实体取消设置现有配置文件,请键入:
unset ssl vserver <vServerName> –sslProfile
  • 要删除现有配置文件,请键入:
rm ssl profile <name>
  • 要显示现有配置文件,请键入:
sh ssl profile <name>

使用 GUI 创建 SSL 配置文件

导航到系统 > 置文件”,选择“SSL 配置文件”选项卡,然后创建 SSL 配置文件。

对客户端证书验证启用更严格的控制

如果由单个 Root-CA 颁发,Citrix ADC 设备将接受有效的中间 CA 证书。也就是说,如果只有 Root-CA 证书绑定到虚拟服务器,并且随客户端证书发送的任何中间证书都由该 Root-CA 验证,则设备信任证书链,并且握手成功。

但是,如果客户端在握手中发送证书链,则除非该证书绑定到 SSL 虚拟服务器,否则无法使用 CRL 或 OCSP 响应程序验证任何中间证书。因此,即使其中一个中间证书被吊销,握手也是成功的。作为握手的一部分,SSL 虚拟服务器发送绑定到它的 CA 证书的列表。为了更严格的控制,可以将 SSL 虚拟服务器配置为仅接受由绑定到该虚拟服务器的 CA 证书之一签名的证书。若要执行此操作,您必须在绑定到虚拟服务器的 SSL 配置文件中启用 ClientAuthUseBoundCAChain 设置。如果客户端证书未由绑定到虚拟服务器的 CA 证书之一签名,则握手将失败。

例如,假设两个客户端证书,即 clientcert1 和 clientcert2,分别由中间证书 INT-CA-A 和 INT-CA-B 签名。中间证书由根证书根 CA 签名。Int-CA-A 和 Root-CA 绑定到 SSL 虚拟服务器。在默认情况下(禁用 ClientAuthUseBoundCAChain),接受 clientcert1 和 clientcert2。但是,如果启用了 ClientAuthUseBoundCAChain,则 Citrix ADC 设备仅接受 clientcert1

使用 CLI 启用对客户端证书验证的更严格的控制

在命令提示窗口中,键入: set ssl profile <name> -ClientAuthUseBoundCAChain Enabled

使用 GUI 对客户端证书验证进行更严格的控制

  1. 导航到系统 > 置文件”,选择SSL 配置文 件”选项卡,然后创建 SSL 配置文件,或选择现有配置文件。
  2. 选择使用绑定 CA 链启用客户端身份验证

旧版 SSL 配置文件