【问题标题】:Apache not checking crl for revoked certificates [closed]Apache 不检查 crl 以获取已撤销的证书 [关闭]
【发布时间】:2014-07-19 07:11:19
【问题描述】:

我遇到了一个我无法确定原因的问题。

出于测试目的,我在 Ubuntu 下的 VirtualBox 中设置了本地 CA 和 Web 服务器。

我愿意尝试客户端证书身份验证。

到目前为止,我无法在浏览器中没有有效证书的情况下访问网络服务器。

问题是,在吊销证书后,我仍然可以访问服务器。

在我的 default-ssl.conf(已加载)中,我设置了:

SSLCARevocationFile to /etc/ssl/CA/crl/crl.pem

“crl.pem”是使用“openssl ca -gencrl /etc/ssl/CA/crl/crl.pem”创建的

openssl crl -in /etc/ssl/CA/crl/crl.pem -text 生成以下内容:

Certificate Revocation List (CRL):
        Version 2 (0x1)
    Signature Algorithm: sha256WithRSAEncryption
        Issuer: /C=AU/ST=Some-State/O=Internet Widgits Pty Ltd
        Last Update: May 29 13:10:55 2014 GMT
        Next Update: Jun 28 13:10:55 2014 GMT
        CRL extensions:
            X509v3 CRL Number: 
                4106
Revoked Certificates:
    Serial Number: 01
        Revocation Date: May 29 10:35:53 2014 GMT
    Serial Number: 02
        Revocation Date: May 29 00:32:33 2014 GMT
    Signature Algorithm: sha256WithRSAEncryption
         4a:95:31:27:df:2b:d3:5f:91:86:32:18:7e:04:1f:88:99:22:
         2b:d6:03:8d:c6:1d:81:ca:06:a0:c3:c2:cf:fe:cb:8a:ec:f9:
         7f:bb:37:4c:69:70:1e:43:0c:8e:97:89:f7:32:f8:bf:9c:3b:
         fc:b2:25:55:98:a1:fe:7f:fb:ab:79:13:67:d6:75:02:c6:74:
         03:34:bc:f3:df:61:d5:0f:e6:1e:24:8b:e7:b0:17:1b:c4:2f:
         16:56:44:8d:e4:92:1f:48:51:23:a5:1d:54:26:a4:58:6b:4d:
         07:40:bb:48:7f:c1:61:00:55:20:d2:a1:56:f9:38:fa:f9:84:
         de:2a:a5:2a:69:82:d7:8b:35:24:5b:4d:ee:c0:33:7c:b6:d6:
         83:e2:f8:79:76:f9:04:55:80:45:8c:b1:9d:5b:8d:29:65:f9:
         6d:de:d3:d2:53:6e:f0:d2:44:c9:3e:60:ca:67:0f:2b:f9:27:
         0d:36:4b:90:d5:fe:7b:23:74:6b:94:e3:93:ea:4f:90:2b:db:
         c8:96:29:4b:cc:42:f6:31:27:e6:a2:ce:a3:c8:fa:47:74:bd:
         32:51:71:f3:66:fb:2d:76:0f:ca:64:23:55:eb:f8:5e:bc:0d:
         eb:f9:e4:7a:7f:72:be:fd:1a:a7:76:32:5e:0f:21:b9:c7:2a:
         89:ac:53:26
-----BEGIN X509 CRL-----
MIIByTCBsgIBATANBgkqhkiG9w0BAQsFADBFMQswCQYDVQQGEwJBVTETMBEGA1UE
CAwKU29tZS1TdGF0ZTEhMB8GA1UECgwYSW50ZXJuZXQgV2lkZ2l0cyBQdHkgTHRk
Fw0xNDA1MjkxMzEwNTVaFw0xNDA2MjgxMzEwNTVaMCgwEgIBARcNMTQwNTI5MTAz
NTUzWjASAgECFw0xNDA1MjkwMDMyMzNaoA8wDTALBgNVHRQEBAICEAowDQYJKoZI
hvcNAQELBQADggEBAEqVMSffK9NfkYYyGH4EH4iZIivWA43GHYHKBqDDws/+y4rs
+X+7N0xpcB5DDI6Xifcy+L+cO/yyJVWYof5/+6t5E2fWdQLGdAM0vPPfYdUP5h4k
i+ewFxvELxZWRI3kkh9IUSOlHVQmpFhrTQdAu0h/wWEAVSDSoVb5OPr5hN4qpSpp
gteLNSRbTe7AM3y21oPi+Hl2+QRVgEWMsZ1bjSll+W3e09JTbvDSRMk+YMpnDyv5
Jw02S5DV/nsjdGuU45PqT5Ar28iWKUvMQvYxJ+aizqPI+kd0vTJRcfNm+y12D8pk
I1Xr+F68Dev55Hp/cr79Gqd2Ml4PIbnHKomsUyY=
-----END X509 CRL-----

我尝试了序列号为 01 和 02 的两个证书,我都可以使用它们登录。

有人知道问题可能是什么吗?

谢谢!

【问题讨论】:

  • 你用的是什么浏览器?检查证书是否被吊销不是浏览器的责任吗?毕竟,任何攻击者都可以简单地配置他们的网络服务器来忽略他们的(被盗)证书被撤销的事实 - 所以网络服务器检查没有多大意义。
  • 我正在使用 Chrome。我正在尝试客户端身份验证(对不起,如果我没有说清楚)。那么服务器不应该检查证书是否在 crl 上被吊销,然后如果它在上面就拒绝访问?
  • 啊,是的,我肯定会编辑您的问题以包含该问题。我相信你的问题是有效的。
  • 谢谢。刚刚编辑它:)

标签: apache ssl openssl certificate


【解决方案1】:

尝试将以下指令放入您的 conf 文件(即 default-ssl.conf)

SSLCARevocationCheck 链

然后停止并启动您的 apache2 服务并查看结果。

苏帕瓦特 P.

【讨论】:

  • 这实际上是解决方案,我一个月前已经完成了,但忘记更新线程:) 无论如何谢谢你:)
  • 这解决了我的问题。谢谢!
  • 我花了 8 个小时才找到这个帖子。谢谢你的回答,Supawat P。
【解决方案2】:

我会在吊销证书并生成新的 CRL 后尝试 gracefully reload server configuration,因为它似乎是 necessary step

【讨论】:

  • 感谢您的意见。不幸的是,这并不能解决问题。我尝试重新启动 apache 服务器,每次吊销证书时都会生成一个新的 crl。当我使用 openssl 验证证书时,我得到它被撤销的结果。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-27
相关资源
最近更新 更多