OCSP装订
CRL和OCSP的Citrix ADC实现仅报告客户端证书的吊销状态。要检查SSL握手期间收到的服务器证书的吊销状态,客户端必须向证书颁发机构发送请求。
对于流量大的网站,许多客户端会收到相同的服务器证书。如果每个客户端都发送了关于服务器证书吊销状态的查询,则证书颁发机构将会淹没OCSP请求以检查证书的有效性。
OCSP装订解决方案
为了避免不必要的拥堵,Citrix ADC设备现在支持OCSP装订。也就是说,在从OCSP响应程序验证证书状态后,设备现在可以在SSL握手时将服务器证书的吊销状态发送给客户端。作为SSL握手的一部分,服务器证书的吊销状态将“固定”到设备向客户端发送的响应中。要使用OCSP装订功能,必须在SSL虚拟服务器上启用该功能,并在设备上添加OCSP响应程序。
注意:
Citrix ADC设备支持 RFC6066中定义的 OCSP装订。
仅在Citrix ADC设备的前端支持OCSP装订。
重要:
Citrix ADC对 OCSP装订的支持仅限于使用 TLS协议版本 1或更高版本的握手。
服务器证书的OCSP响应缓存
在 SSL握手期间,当客户端请求服务器证书的吊销状态时,设备首先检查其本地缓存是否存在此证书的条目。如果找到有效条目,则会对其进行评估,并将服务器证书及其状态呈现给客户端。如果未找到吊销状态条目,设备将向 OCSP响应程序发送服务器证书的吊销状态请求。如果收到响应,则会将证书和吊销状态发送到客户端。如果 OCSP响应中存在下一个更新字段,则会按照配置的时间长度(在超时字段中指定的值)缓存响应。
注意:从版本 12.1版本 49.x中,您甚至可以在超时到期之前从 OCSP响应程序清除服务器证书的缓存响应。之前,在配置的超时结束之前,无法放弃证书密钥对中的缓存状态。
要使用 CLI清除缓存状态,请在命令提示符处键入:
clear ssl certKey < certKey name> -ocspstaplingCache
例如:
clear ssl certKey s1 -ocspstaplingCache
使用 桂清除缓存状态
- 在 桂中,导航到流量管理>SSL>证书>加利福尼亚州证书。
- 在详细信息窗格中,选择一个证书。
- 在“选择操作“列表中,选择”清除"。当系统提示确认时,单击是。
OCSP装订配置
配置 OCSP装订涉及启用该功能和配置 OCSP要配置 OCSP必须添加 OCSP响应程序,将 OCSP响应程序绑定到 加利福尼亚州证书,并将证书绑定到 SSL虚拟服务器。
注意: 支持仅具有基于 超文本传输协议的 统一资源定位地址的 OCSP响应程序。
使用CLI启用OCSP装订
在命令提示符下,键入:
设置ssl vserver -ocspstapling [ENABLED | DISABLED]
示例:
set ssl vserver vip1 -ocspStapling ENABLED Done sh ssl vserver vip1高级ssl配置:DH: DISABLED DH Private-Key exponpling 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:DISABLED SSL Redirect: DISABLED Non FIPS Cipher: DISABLED SNI: ENABLED OCSP Stapling: ENABLED SSLv2: DISABLED SSLv3: DISABLED 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: server_certificate1服务器证书1)Cipher Name:默认描述:具有加密强度的默认密码列表>= 128bit完成
注意:如果启用了默认(增强型)配置文件,请使用设置ssl配置文件
命令启用或禁用OCSP。
通过使用GUI启用OCSP装订
- 导航到流量管理>SSL>虚拟服务器。
- 打开虚拟服务器,然后在SSL参数中选择OCSP装订。
OCSP配置
动态或手动添加OCSP响应程序以发送OCSP装订请求。当您基于服务器证书中的OCSP URL添加服务器证书及其颁发者证书时,会动态添加内部响应程序。从CLI或GUI添加手动OCSP响应程序。要发送服务器证书的OCSP请求,Citrix ADC设备会根据将OCSP响应程序绑定到颁发者证书时为其分配的优先级选择OCSP响应程序。如果响应程序未能发送OCSP装订请求,则会选择具有下一个最高优先级的响应程序来发送请求。例如,如果只手动配置了一个响应程序并且它失败,并且存在动态绑定响应程序,则会选择该响应程序来发送 OCSP 请求。
如果 OCSP URL不是 HTTP,则不会创建内部 OCSP响应程序。
注意
手动添加的OCSP响应程序优先于动态添加的响应程序。
手动创建的OCSP响应程序和内部创建的OCSP响应程序之间的区别
手动创建的OCSP响应程序 | 内部(动态)创建的OCSP响应程序 |
手动创建并显式绑定到具有优先级的颁发者证书。 | 默认情况下创建和绑定,同时添加服务器证书及其颁发者证书(CA证书)。名称以“ns_internal_”开的头。 |
优先级介于 1 到 127 之间是为配置的响应程序保留的。 | 优先级从 128 起自动分配。 |
统一资源定位地址和批处理深度可以更改。 | URL和批处理深度无法更改。 |
直接删除。 | 仅当您删除服务器证书或CA证书时才删除。 |
可以绑定到任何CA证书。 | 默认情况下绑定到一个 加利福尼亚州证书。不能绑定到任何其他 加利福尼亚州证书。 |
保存在配置 (ns.conf)中。 | 添加命令不会保存在配置中。只保存集命令。 |
如果将三个 OCSP响应程序绑定到分别具有优先级 1、2 和 3.的同一颁发者证书,然后取消绑定优先级 2.则其他优先级不受影响。 | 三个 OCSP响应程序自动绑定到分别具有优先级 128、129 和 130的颁发者证书。如果删除用于创建具有优先级 129绑定的响应程序的服务器证书,则该响应程序将被删除。此外,下一个响应程序的优先级(优先级 130)会自动更改为 129。 |
请求处理 示例:
- 添加虚拟服务器 (VIP1)
- 添加颁发者证书(CA1)并将其绑定到VIP1。
- 添加三个证书S1, S2和S3。默认情况下,将分别创建内部响应程序resp1, resp2和resp3。
- 将 S3绑定到 VIP1
- 一个请求来到VIP1。响应程序resp3处于选中状态。
要动态创建内部 OCSP响应程序,设备需要以下内容:
- 服务器证书颁发者的证书(通常为CA证书)。
- 服务器证书的证书密钥对。此证书必须包含证书颁发机构提供的OCSP URL。URL用作动态添加的内部响应程序的名称。
内部OCSP响应程序具有与手动配置响应程序相同的默认值。
注意: 默认情况下,在内部响应程序上禁用缓存。使用命
设置ssl ocspResponder
令启用缓存。
使用CLI配置OCSP
在命令提示符下,键入以下命令来配置OCSP并验证配置:
添加ssl certKey(-cert[-password])[-key|-fipsKey|-hsmKey][-inform][-expiryMonitor(ENABLED | DISABLED)[-notificationPeriod][-bundle(YES | NO)]添加ssl ocspResponder-url[-cache(ENABLED | DISABLED)[-cacheTimeout][-resptimeout][-responderCert|-trustResponder][-ProducedTimeskew][-signingCert][-useNonce(YES | NO)][-insertClientCert(YES | NO)]bind ssl certKey[][-ocspResponder][-priority]显示ssl ocspResponder[]需要复制-->
参数:
httpMethod:
用于发送 OCSP请求的 超文本传输协议方法。对于长度小于 255字节的请求,您可以为 OCSP服务器的查询配置 HTTP获取方法。如果指定 收到方法,但长度大于 255字节,则设备将使用默认方法 (员额)
可能的值:得到,邮寄
默认值:邮递
ocspUrlResolveTimeout:
等待OCSP URL解析的时间(以毫秒为单位)。在这段时间过后,将选择具有下一个更高优先级的响应程序。如果所有响应程序都失败,则会显示错误消息或断开连接,具体取决于虚拟服务器上的设置。
最小值:100
最大值:2000
示例:
添加ssl certkey root_ca1–cert root_cacert.pem添加ssl ocspResponder ocsp_responder1-url“http://www.myCA.org:80/ocsp/”-已启用缓存-缓存超时30-响应超时100-响应器响应器\u证书-生产日期Timeskew 300-签名证书签名\u证书-插入客户端插入是绑定ssl证书密钥根\u ca1-ocspResponder ocsp\u responder1-优先级1 sh ocspResponder ocsp\u responder1 1)名称:ocsp\u responder1 URL:http://www.myCA.org:80/ocsp/,IP:192.128.22.22缓存:启用时间输出:30分钟批处理:8超时:100毫秒HTTP请求超时:100毫秒请求签名证书:签名证书响应验证:完整,证书:响应者证书生产日期时间偏差:300秒当前扩展:启用客户端证书插入:启用完成显示证书密钥根目录\u ca1名称:根目录\u ca1状态:有效,过期天数:8907版本:3…1)OCSP响应程序名称:OCSP_响应程序1优先级:1完成<!--NeedCopy-->
使用 CLI修改 OCSP
您不能修改OCSP响应程序的名称,但可以使用设置ssl ocspResponder
命令更改任何其他参数。
在命令提示窗口中,键入以下命令来设置参数并验证配置:
设置ssl ocspResponder[-url][-cache(ENABLED | DISABLED)][-cacheTimeout][-responderCert][-trustResponder][-producedAtTimeSkew][-signingCert][-useNonce(YES NO)]解除ssl证书密钥绑定[][-ocspResponder]绑定ssl证书密钥[][-ocspResponder][-priority]显示ssl ocspResponder[]<!--NeedCopy-->
通过使用GUI配置OCSP
- 导航到流量管理>SSL>OCSP响应程序,并配置OCSP响应程序。
- 导航到流量管理>SSL>证书,选择证书,然后在操作列表中选择OCSP绑定。绑定OCSP响应程序。
- 导航到”流量管理”>“负载平衡”>“虚拟服务器”,打开虚拟服务器,然后单击“证书”部分以绑定 加利福尼亚州证书。
- 或者,选择OCSP强制。
注意:
添加ssl ocspResponder
和中的插入客户端证书参数不再有效。设置ssl ocspResponder
也就是说,在配置过程中忽略参数。