Strongswan(IKEv2)中的 OCSP 验证失败

Strongswan(IKEv2)中的 OCSP 验证失败

我已成功在传输模式下在两个(虚拟)主机之间建立了 IPsec 连接,现在我希望服务器使用 OCSP 验证客户端的证书。在第三台主机中,我运行了 OCSP 响应器 ( openssl ocsp -port 80 ...)。我可以看到服务器如何能够到达 OCSP、发送查询并得到答复,但最终验证失败。

以下是服务器(IPsec 响应器)中的日志内容:

charon: 01[CFG] checking certificate status of "C=ES, ST=Gipuzkoa, L=Donostia-San Sebastian, O=Tecnalia, CN=client@localhost"
charon: 01[CFG]   requesting ocsp status from 'http://ocsp.localhost' ...
charon: 01[CFG]   using trusted ca certificate "C=ES, ST=Gipuzkoa, L=Donostia-San Sebastian, O=Tecnalia, CN=Tecnalia Root CA"
charon: 01[CFG]   reached self-signed root ca with a path length of 0
charon: 01[CFG]   using trusted certificate "C=ES, ST=Gipuzkoa, L=Donostia-San Sebastian, O=Tecnalia, CN=ocsp.localhost"
charon: 01[CFG]   using certificate "C=ES, ST=Gipuzkoa, L=Donostia-San Sebastian, O=Tecnalia, CN=ocsp.localhost"
charon: 01[CFG] no issuer certificate found for "C=ES, ST=Gipuzkoa, L=Donostia-San Sebastian, O=Tecnalia, CN=ocsp.localhost"
charon: 01[CFG] ocsp response verification failed
charon: 01[CFG] ocsp check failed, fallback to crl

为了方便起见,我在所有主机中复制了相同的证书文件(输出修剪):

/etc/ipsec.d# ls -lR

./cacerts:
total 4
-rw-r--r-- 1 root root 1367 Nov  2 09:53 ca.cert.pem

./certs:
total 8
-rw-r--r-- 1 root root 1432 Nov  2 09:53 client.cert.pem
-rw-r--r-- 1 root root 1700 Nov  2 09:53 localhost.cert.pem

./crls:
total 0

./ocspcerts:
total 4
-rw-r--r-- 1 root root 1379 Nov 10 09:32 ocsp.cert.pem

这是一个非常简单的路径,其中 CA ( ca.cert.pem) 签署所有证书 - 服务器证书 ( localhost.cert.pem)、客户端证书 ( client.cert.pem) 和 OCSP 响应器使用的证书 ( ocsp.cert.pem)。

这是我在服务器上所拥有的ipsec.conf

ca strongswan-ca
        cacert=ca.cert.pem
        ocspuri=http://ocsp.localhost
        auto=add

我认为一切都与那个令人讨厌的“未找到颁发者证书”错误有关,但到目前为止还不知道为什么会发生这种情况。如果我使用 openssl 查询 OCSP 响应器,它不会给出任何验证错误。

答案1

事实证明,

为了方便起见,我在所有主机上复制了相同的证书文件

和这个

如果我使用 openssl 查询 OCSP 响应器,它不会给出任何验证错误

是错误的。有一次我弄乱了我的密钥,OCSP 服务器上的 OCSP 证书/密钥与其他机器上的不同。所以@ecdsa 的评论完全正确。

我发布的配置一切正常,一旦我再次重新生成所有密钥和证书,一切都正常工作。

相关内容