Citrix ADC

证书吊销列表

CA 颁发的证书通常在其到期日期之前保持有效。但是,在某些情况下,CA 可能会在到期日期之前撤销颁发的证书。例如,当所有者的私钥被泄露时,公司或个人的名称发生变化,或主题与 CA 之间的关联发生变化。

证书吊销列表 (CRL) 通过序列号和颁发者标识无效证书。

证书颁发机构定期颁发 CRL。您可以将 Citrix ADC 设备配置为使用 CRL 阻止出现无效证书的客户端请求。

如果您已经有来自 CA 的 CRL 文件,请将其添加到 Citrix ADC 设备中。您可以配置刷新选项。您还可以将 Citrix ADC 配置为按指定间隔(从 Web 位置或 LDAP 位置)自动同步 CRL 文件。设备支持 PEM 或 DER 文件格式的 CRL。请确保指定要添加到 Citrix ADC 设备的 CRL 文件的文件格式。

如果您已将 ADC 用作 CA 来创建 SSL 部署中使用的证书,则还可以创建 CRL 来撤消特定证书。例如,此功能可用于确保在 Citrix ADC 上创建的自签名证书不会在生产环境中使用,也不会超过特定日期。

注意:

默认情况下,CRL 存储在 Citrix ADC 设备上的 /var/netscaler/ssl 目录中。

在 ADC 上创建 CRL

由于您可以使用设备充当证书颁发机构并创建自签名证书,因此您还可以撤销已创建的证书和您拥有 CA 证书的证书。

在为这些证书创建 CRL 之前,设备必须撤销无效证书。设备将吊销证书的序列号存储在索引文件中,并在每次吊销证书时更新该文件。第一次吊销证书时,索引文件将自动创建。

使用 CLI 撤销证书或创建 CRL

在命令提示符下,键入以下命令:

create ssl crl <CAcertFile> <CAkeyFile> <indexFile> (-revoke <input_filename> | -genCRL <output_filename>)

示例:

create ssl crl Cert-CA-1 Key-CA-1 File-Index-1 -revoke Invalid-1

create ssl crl Cert-CA-1 Key-CA-1 File-Index-1 -genCRL CRL-1

通过使用 GUI 撤销证书或创建 CRL

  1. 导航到 流量管理 > SSL ,然后在入门组中选择 CRL 管理。
  2. 输入证书详细信息,然后在选择操作列表中,选择撤销证书生成 CRL

将现有 CRL 添加到 ADC

在 Citrix ADC 设备上配置 CRL 之前,请确保 CRL 文件存储在 Citrix ADC 设备上本地。在 HA 设置的情况下,CRL 文件必须存在于两台 ADC 设备上,并且两台设备上文件的目录路径必须相同。

使用 CLI 在 Citrix ADC 上添加 CRL

在命令提示符处,键入以下命令以在 Citrix ADC 上添加 CRL 并验证配置:

add ssl crl <crlName> <crlPath> [-inform (DER | PEM)]

show ssl crl [<crlName>]

示例:

> add ssl crl crl-one /var/netscaler/ssl/CRL-one -inform PEM

Done

> show ssl crl crl-one

            Name: crl-one   Status: Valid,  Days to expiration: 29
            CRL Path: /var/netscaler/ssl/CRL-one
            Format: PEM     CAcert: samplecertkey
            Refresh: DISABLED
            Version: 1
            Signature Algorithm: sha1WithRSAEncryption
            Issuer:  C=US,ST=California,L=Santa Clara,O=NetScaler Inc.,OU=SSL Acceleration,CN=www.ns.com/emailAddress=support@Citrix ADC appliance.com
            Last_update:Jun 15 10:53:53 2010 GMT
            Next_update:Jul 15 10:53:53 2010 GMT

    1)      Serial Number: 00
            Revocation Date:Jun 15 10:51:16 2010 GMT
     Done

使用 GUI 在 Citrix ADC 上添加 CRL

导航到 流量管理 > SSL > CRL ,然后添加 CRL。

配置 CRL 刷新参数

CRL 由证书颁发机构定期生成和发布,有时甚至在撤销特定证书后立即生成和发布。Citrix 建议您定期更新 Citrix ADC 设备上的 CRL,以防止客户端尝试使用无效证书进行连接。

Citrix ADC 设备可以从 Web 位置或 LDAP 目录刷新 CRL。当您指定刷新参数和 Web 位置或 LDAP 服务器时,CRL 不必在执行命令时出现在本地硬盘驱动器上。第一次刷新将副本存储在由 CRL File 参数指定的路径中的本地硬盘驱动器上。用于存储 CRL 的默认路径是 /var/netscaler/ssl。

注意:在版本 10.0 及更高版本中,默认情况下不包括刷新 CRL 的方法。指定 HTTP 或 LDAP 方法。如果要从早期版本升级到版本 10.0 或更高版本,则必须添加方法并再次运行该命令。

使用 CLI 配置 CRL 自动刷新

在命令提示符处,键入以下命令以配置 CRL 自动刷新并验证配置:

set ssl crl <crlName> [-refresh ( ENABLED | DISABLED )] [-CAcert <string>] [-server <ip_addr|ipv6_addr|*> | -url <URL>] [-method ( HTTP | LDAP )] [-port <port>] [-baseDN <string>] [-scope ( Base | One )] [-interval <interval>] [-day <positive_integer>] [-time <HH:MM>][-bindDN <string>] {-password } [-binary ( YES | NO )]

show ssl crl [<crlName>]

示例:

    set CRL crl1  -refresh enabled -method ldap -inform DER -CAcert ca1 -server 10.102.192.192 -port 389 -scope base -baseDN "cn=clnt_rsa4_multicert_der,ou=eng,o=ns,c=in" -time 00:01

    set ssl crl crl1 -refresh enabled -method http -cacert ca1 -port 80 -time 00:10 -url http://10.102.192.192/crl/ca1.crl


    > sh crl

    1)         Name: crl1        Status: Valid,     Days to expiration: 355
                CRL Path: /var/netscaler/ssl/crl1
                Format: PEM      CAcert: ca1
                Refresh: ENABLED          Method: HTTP
                URL: http://10.102.192.192/crl/ca1.crl                 Port:80
                Refresh Time: 00:10
                Last Update: Successful, Date:Tue Jul  6 14:38:13 2010
    Done

通过使用 GUI 使用 LDAP 或 HTTP 配置 CRL 自动刷新

  1. 导航到 流量管理 > SSL > CRL
  2. 打开 CRL,然后选择 启用 CRL 自动刷新

注意:如果新 CRL 在 CRL 的上次更新时间字段指定的实际更新时间之前在外部存储库中刷新,则必须立即刷新 Citrix ADC 设备上的 CRL。

若要查看上次更新时间,请选择 CRL,然后单击 详细信息

同步 CRL

Citrix ADC 设备使用最近分布的 CRL 来阻止具有吊销证书的客户端访问安全资源。

如果经常更新 CRL,Citrix ADC 设备需要一种自动机制来从存储库获取最新 CRL。您可以将设备配置为按指定的刷新间隔自动更新 CRL。

设备维护需要定期更新的 CRL 的内部列表。按照这些指定的时间间隔,设备扫描列表中查找需要更新的 CRL。然后,它连接到远程 LDAP 服务器或 HTTP 服务器,检索最新的 CRL,然后使用新的 CRL 更新本地 CRL 列表。

注意: 如果在 CA 证书绑定到虚拟服务器时将 CRL 检查设置为强制性,并且初始 CRL 刷新失败,则与 CRL 具有相同颁发者的所有客户端身份验证连接将被拒绝为 REVREVEL,直到成功刷新 CRL。

您可以指定必须执行 CRL 刷新的时间间隔。您还可以指定确切的时间。

使用 CLI 同步 CRL 自动刷新

在命令提示符下,键入以下命令:

set ssl crl <crlName> [-interval <interval>] [-day <integer>] [-time <HH:MM>]

示例:

set ssl crl CRL-1 -refresh ENABLE -interval MONTHLY -days 10 -time 12:00

使用 GUI 同步 CRL 刷新

  1. 导航到 流量管理 > SSL > CRL
  2. 打开 CRL,选择 启用 CRL 自动刷新,然后指定间隔。

使用证书吊销列表执行客户端身份验证

如果 Citrix ADC 设备上存在证书吊销列表 (CRL),则无论执行 CRL 检查是否设置为强制还是可选,都会执行 CRL 检查。

握手的成功或失败取决于以下因素的组合:

  • CRL 检查规则
  • 客户端证书检查规则
  • 为 CA 证书配置的 CRL 的状态

下表列出了涉及吊销证书的握手可能组合的结果。

表 1. 使用吊销证书与客户端握手的结果

CRL 检查规则 客户端证书检查规则 为 CA 证书配置的 CRL 状态 使用吊销证书的握手结果
可选 可选 失踪了 成功
可选 强制 失踪了 成功
可选 强制 礼物 故障
强制 可选 失踪了 成功
强制 强制 失踪了 故障
强制 可选 礼物 成功
强制 强制 礼物 故障
选项/强制性 可选 已过期 成功
选项/强制性 强制 已过期 故障

注意:

  • 默认情况下,CRL 检查是可选的。若要从可选更改为强制或相反,您必须首先从 SSL 虚拟服务器取消绑定证书,然后在更改选项后再次绑定证书。

  • sh ssl vserver 命令的输出中,OCSP 检查:可选意味着 CRL 检查也是可选的。只有当 CRL 检查设置设置为必需时,才会在sh ssl vserver 命令的输出中显示 CRL 检查设置。如果 CRL 检查设置为可选,则不会显示 CRL 检查详细信息。

使用 CLI 配置 CRL 检查

在命令提示符下,键入以下命令:

bind ssl vserver <vServerName> -certkeyName <string> [(-CA -crlCheck ( Mandatory | Optional ))]
sh ssl vserver

示例:

bind ssl vs v1 -certkeyName ca -CA -crlCheck mandatory
> sh ssl vs v1

Advanced SSL configuration for VServer v1:

DH: DISABLED
DH Private-Key Exponent Size Limit: DISABLED
Ephemeral RSA: ENABLED Refresh Count: 0
Session Reuse: ENABLED Timeout: 120 seconds
Cipher Redirect: DISABLED
SSLv2 Redirect: DISABLED
ClearText Port: 0
Client Auth: ENABLED Client Cert Required: Mandatory
SSL Redirect: DISABLED
Non FIPS Ciphers: DISABLED
SNI: DISABLED
OCSP Stapling: DISABLED
HSTS: DISABLED
HSTS IncludeSubDomains: NO
HSTS Max-Age: 0
SSLv2: DISABLED SSLv3: ENABLED TLSv1.0: ENABLED TLSv1.1: ENABLED TLSv1.2: ENABLED
Push Encryption Trigger: Always
Send Close-Notify: YES

ECC Curve: P_256, P_384, P_224, P_521

1) CertKey Name: ca CA Certificate CRLCheck: Mandatory CA_Name Sent

1) Cipher Name: DEFAULT
Description: Predefined Cipher Alias
Done

使用 GUI 配置 CRL 检查

  1. 导航到流量管理 > 负载平衡 > 虚拟服务器,然后打开 SSL 虚拟服务器。
  2. 单击 书部分。
  3. 选择一个证书,然后在 OCSP 和 CRL 检查 列表中选择 CRL 强制

使用吊销或有效证书的握手结果

CRL 检查规则 客户端证书检查规则 为 CA 证书配置的 CRL 的状态 使用吊销的证书握手的结果 具有有效证书的握手结果
强制 强制 礼物 故障 成功
强制 强制 已过期 故障 故障
强制 强制 失踪了 故障 故障
强制 强制 未定义 故障 故障
可选 强制 礼物 故障 成功
可选 强制 已过期 成功 成功
可选 强制 失踪了 成功 成功
可选 强制 未定义 成功 成功
强制 可选 礼物 成功 成功
强制 可选 已过期 成功 成功
强制 可选 失踪了 成功 成功
强制 可选 未定义 成功 成功
可选 可选 礼物 成功 成功
可选 可选 已过期 成功 成功
可选 可选 失踪了 成功 成功
可选 可选 未定义 成功 成功

证书吊销列表