下载证书:gnutls 或 openssl

下载证书:gnutls 或 openssl

我需要从网站下载证书。到目前为止,我一直使用gnutls命令来获取它。

$ gnutls-cli --save-cert=ra-sec.pem vault.ra-sec.svc

我发现我可以使用openssl

$ openssl s_client -connect vault.ra-sec.svc:443

尽管如此,两次下载的证书并不相同。

有任何想法吗?

答案1

Openssl 确实不是在 ClientHello 消息中自动发送主机名,然后如果服务器配置了多个 TLS 证书,请求将返回默认 TLS 证书而不是特定于主机名的证书。

为了获得类似的输出,gnutls-cli您可能需要使用-servername -showcerts 选项:

-servername name
在 ClientHello 消息中设置 TLS SNI(服务器名称指示)扩展。

-showcerts
显示整个服务器证书链:通常只显示服务器证书本身。

$ openssl s_client -showcerts -servername vault.ra-sec.svc -connect vault.ra-sec.svc:443

答案2

gnutls 版本

gnutls-bin --print-cert vault.ra-sec.svc:443 | certtool --certificate-info

相关内容