根据当前的执行行为, 如果在 CRL 中没有列出证书的 s-/N, 则证书状态将标记为未知。
此行为与 RFC 一致, 其中证书可以标记为未知, 如果 CRL 具有国内流离失所者扩展, 并且不需要实现来支持此扩展。
RFC 5280
https://tools.ietf.org/html/rfc5280
5.2.5。颁发分发点
颁发分发点是一个关键的 crl 扩展, 用于标识特定 crl 的 crl 分发点和范围, 并指示 crl 是否仅包括最终实体证书的吊销、CA 证书、属性证书只, 或有限的原因代码集。虽然扩展是关键的, 但不需要符合一致的实现来支持此扩展。但是, 不支持此扩展的实现必须将此 crl 中未列出的任何证书的状态视为未知, 或者找到不包含任何不可识别的关键扩展的其他 crl。
分析防火墙上的这种行为:
以下日志可以在 sslmgr.log 中看到:
2016-08-26 17:09:01.582 +1000 国内流离失所者扩展目前在 crl http://crl3.digicert.com/sha2-ev-server-g1.crl因此设置未列出的证书序列 [0793EC89595DBA606D1FD9F7BE389802] 未知的状态.
这里, 07:93: 欧共体: 89:59:5D: 60:6D: 1 f: D9: F7: 是: 38:98:02 是www.digicert.com证书的 S/N。
如何验证
- "sha2-ev-服务器-g1 crl" 是这些网站下载的 crl (如在 sslmgr.log 中看到)。
- 使用链接将 CRL 下载到本地计算机。
- 检查 CRL 是否具有国内流离失所者扩展名:
$ openssl crl-通知 sha2-ev-服务器-g1. crl
证书吊销列表 (crl):
版本 2 (0x1)
签名算法: sha256WithRSAEncryption
颁发者:/C = US/O = DigiCert 公司/OU =www.digicert.com/CN=DigiCertSHA2 扩展的验证服务器 CA
最近更新: 8月25日 17:04: 24 2016 GMT
下一更新:9月 1 17:00: 00 2016 GMT
CRL 扩展:
X509v3 权威密钥标识符:
keyid:3D:D3:50:A5:D6:A0:AD:EE:F3:4A:60:0A:65:D3:21:D4:F8:F8:D6:0F
X509v3 CRL 号:
1036
X509v3 发出分布点: 关键
04.2.0.http://crl3.digicert.com/sha2-ev-server-g1.crl
吊销的证书:
序列号: 0983906AA7BF5F294B1BB4EC71AC769C
吊销时间: 7月16日 19:09: 26 2014 GMT
序列号: 0C340284CF828B2E7D72AB750D17FCA1
吊销时间: 9月14日 08:02: 02 2014 GMT
<SNIP></SNIP>
$ openssl crl-在 sha2-ev-服务器-g1 中通知 DER 文本. crl |grep 0793EC89595DBA606D1FD9F7BE389802
$ < (no=""> </>
这种行为可以体现自己的例子:
当 SSL 解密配置文件设置为阻止具有 "未知" 证书状态的会话时, 此行为可能导致问题的一种情况是:
以下是在访问 github.com 时在最终用户上看到的证书错误示例, 其中的证书标记为未知, 并且防火墙阻止了连接: