如何使用 openssl 命令行提取 cacertfile 的所有主题?

seb*_*ter 8 ssl openssl

是否有 openssl 命令来提取 cacertfile(包含多个证书,如 /etc/ssl/certs/ca-certificates.crt)的所有证书主题?

我试过了,openssl x509 -in /etc/ssl/certs/ca-certificates.crt -noout -subject但它只给了我第一个证书的主题。

小智 6

要打印 CA 文件中的所有主题:

openssl crl2pkcs7 -nocrl -certfile ca-certificates.crt | openssl pkcs7 -print_certs -text -noout | grep 'Subject:'


bah*_*mat 5

不幸的是,我不相信 OpenSSL 可以做到这一点。对于 x509 操作,OpenSSL 假定每个文件有一个证书。

根据此站点,您必须将它们拆分为单独的文件。他甚至提供了一个 perl 脚本,可以为您拆分它。然后,您可以遍历文件,或修改 perl 脚本以直接提取主题。