证书吊销列表
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
由于您可以使用adc设备充当ca并创建自签名证书,因此还可以吊销以下证书:
- 您创建的证书。
- 您拥有ca证书的证书。
在为这些证书创建CRL之前,设备必须撤销无效证书。设备将吊销证书的序列号存储在索引文件中,并在每次吊销证书时更新该文件。第一次吊销证书时,索引文件将自动创建。
使用cli撤销证书或创建CRL
在命令提示符下,键入以下命令:
create ssl crl (-revoke | -genCRL )
示例:
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
- 导航到流量管理> SSL,然后在入门组中选择CRL管理。
- 输入证书详细信息,然后在选择操作列表中选择吊销证书或生成CRL。
将现有CRL添加到adc
在Citrix ADC设备上配置CRL之前,请确保CRL文件存储在Citrix ADC设备上本地。在HA设置中,CRL文件必须存在于两台ADC设备上,并且两台设备上文件的目录路径必须相同。
使用CLI在Citrix ADC上添加CRL
在命令提示符处,键入以下命令以在Citrix ADC上添加CRL并验证配置:
add ssl crl [-inform (DER | PEM)] show ssl crl []
示例:
> add ssl crl crl-one /var/netscaler/ssl/ crl -inform PEM Done > show ssl crl crl-one名称:crl-one状态:有效,过期天数:29 crl路径:/var/netscaler/ssl/CRL-one格式:PEM CAcert: samplecertkey刷新:DISABLED版本:1签名算法:sha1WithRSAEncryption发行者: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: 7月15 10:53:53 2010 GMT 1)序列号:00撤销日期:Jun 15 10:51:16 2010 GMT完成
使用GUI在Citrix ADC上添加CRL
导航到流量管理>SSL>CRL,然后添加crl。
配置CRL刷新参数
CRL由证书颁发机构定期生成和发布,有时甚至在撤销特定证书后立即生成和发布。Citrix 建议您定期更新 Citrix ADC 设备上的 CRL,以防止客户端尝试使用无效证书进行连接。
Citrix ADC设备可以从Web位置或LDAP目录刷新CRL。当您指定刷新参数和网络位置或LDAP服务器时,在运行命令时,不必在本地硬盘驱动器上存在CRL。第一次刷新将副本存储在由CRL文件参数指定的路径中的本地硬盘驱动器上。用于存储CRL的默认路径是/var/netscaler/ssl. txt
注意:在版本10.0及更高版本中,默认情况下不包括刷新CRL的方法。指定HTTP或ldap方法。如果要从早期版本升级到版本10.0或更高版本,则必须添加方法并再次运行该命令。
使用cli配置CRL自动刷新
在命令提示符下,键入以下命令以配置CRL自动刷新并验证配置:
set ssl crl [-refresh (ENABLED | DISABLED)] [-CAcert ] [-server | -url ] [-method (HTTP | LDAP)] [-port ] [-baseDN ] [-scope (Base | One)] [-interval ] [day ] [-time ][-bindDN ] {-password} [-binary (YES | NO)] show ssl crl []
示例:
设置CRL crl1刷新方法启用ldap通知DER -CAcert ca1 - server 10.102.192.192 - port 389范围基地basedn“cn = clnt_rsa4_multicert_der, ou = eng, o = ns, c =“- 00:01设置ssl CRL crl1刷新方法启用http -CAcert ca1 - port 80 - 00:10 URL http://10.102.192.192/crl/ca1.crl > sh CRL 1)名称:crl1状态:有效,天过期:355 CRL路径:/var/netscaler/ssl/crl1格式:PEM CAcert: ca1刷新:方法:启用http URL:http://10.102.192.192/crl/ca1.crl端口:80刷新时间:00:10 Last Update: Successful, Date:Tue july 6 14:38:13 2010 Done
通过使用GUI使用ldap或HTTP配置CRL自动刷新
- 导航到流量管理> SSL > CRL。
- 打开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同一颁发者的
所有客户端身份验证连接将被拒绝为reveed,直到crl已成功刷新。
您可以指定必须执行CRL刷新的时间间隔。您还可以指定确切的时间。
使用cli同步CRL自动刷新
在命令提示符下,键入以下命令:
set ssl crl [-interval ] [day ] [-time ]
示例:
设置ssl crl crl -1 -refresh ENABLE -interval month -days 10 -time 12:00
使用GUI同步CRL刷新
- 导航到流量管理> SSL > CRL。
- 打开crl,选择启用CRL自动刷新,然后指定间隔。
使用证书吊销列表执行客户端身份验证
如果Citrix ADC设备上存在证书吊销列表(CRL),则无论执行CRL检查是否设置为强制还是可选,都会执行CRL检查。
握手的成功或失败取决于以下因素的组合:
- CRL检查规则
- 客户端证书检查规则
- 为ca证书配置的CRL的状态
下表列出了涉及吊销证书的握手可能组合的结果。
表 1.使用吊销证书与客户端握手的结果
CRL检查规则 | 客户端证书检查规则 | 为ca证书配置的CRL状态 | 使用吊销证书的握手结果 |
---|---|---|---|
可选 | 可选 | 失踪了 | 成功 |
可选 | 强制 | 失踪了 | 成功 |
可选 | 强制 | 礼物 | 故障 |
强制 | 可选 | 失踪了 | 成功 |
强制 | 强制 | 失踪了 | 故障 |
强制 | 可选 | 礼物 | 成功 |
强制 | 强制 | 礼物 | 故障 |
选项/强制性 | 可选 | 已过期 | 成功 |
选项/强制性 | 强制 | 已过期 | 故障 |
注意:
默认情况下,crl检查是可选的。要从可选更改为强制或反之,必须先从SSL虚拟服务器取消绑定证书,然后在更改选项后再次绑定证书。
在
sh ssl vserver
命令的输出中,ocsp检查:可选意味着CRL检查也是可选的。仅当CRL检查设置为强制时,CRL检查设置才会显示在sh ssl vserver
命令的输出中。如果CRL检查设置为可选,则不会显示CRL检查详细信息。
使用cli配置CRL检查
在命令提示符下,键入以下命令:
bind ssl vserver -certkeyName [(-CA -crlCheck(必选|可选))]sh ssl vserver
示例:
bind ssl vs v1 -certkeyName ca -CA -crlCheck mandatory > sh ssl vs v1 VServer v1高级ssl配置:DH: DISABLED DH私钥指数大小限制:DISABLED Ephemeral RSA: ENABLED刷新次数:0会话重用:ENABLED超时时间:120秒Cipher Redirect: DISABLED SSLv2 Redirect: DISABLED ClearText Port: 0 Client Auth: ENABLED Client Cert Required: mandatory ssl Redirect: DISABLED Non FIPS Cipher: DISABLED SNI: DISABLED OCSP Stapling: DISABLED HSTS:DISABLED HSTS包括esubdomains: 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:预定义密码Alias Done
使用GUI配置CRL检查
- 导航到流量管理 > 负载平衡 > 虚拟服务器,然后打开SSL虚拟服务器。
- 单击证书部分。
- 选择一个证书,然后在Ocsp和CRL检查列表中选择CRL强制。
使用吊销或有效证书的握手结果
CRL检查规则 | 客户端证书检查规则 | 为ca证书配置的CRL的状态 | 使用吊销的证书握手的结果 | 具有有效证书的握手结果 |
---|---|---|---|---|
强制 | 强制 | 礼物 | 故障 | 成功 |
强制 | 强制 | 已过期 | 故障 | 故障 |
强制 | 强制 | 失踪了 | 故障 | 故障 |
强制 | 强制 | 未定义 | 故障 | 故障 |
可选 | 强制 | 礼物 | 故障 | 成功 |
可选 | 强制 | 已过期 | 成功 | 成功 |
可选 | 强制 | 失踪了 | 成功 | 成功 |
可选 | 强制 | 未定义 | 成功 | 成功 |
强制 | 可选 | 礼物 | 成功 | 成功 |
强制 | 可选 | 已过期 | 成功 | 成功 |
强制 | 可选 | 失踪了 | 成功 | 成功 |
强制 | 可选 | 未定义 | 成功 | 成功 |
可选 | 可选 | 礼物 | 成功 | 成功 |
可选 | 可选 | 已过期 | 成功 | 成功 |
可选 | 可选 | 失踪了 | 成功 | 成功 |
可选 | 可选 | 未定义 | 成功 | 成功 |