如果证书由未知CA签名,如何显示服务器的证书?

时间:2016-09-22 21:34:02

标签: postgresql ssl openssl ssl-certificate tls1.2

我有一台服务器给我TLS问题,我想查看它提供的证书,以帮助诊断问题。通常,我会使用openssl来显示证书,如下所示:

$ openssl s_client -connect facebook.com:443

但是,我不知道CA签署了此服务器的证书。我认为这是我们的内部CA,但测试建议不然。因此,我无法使用openssl的-CAfile-CApath标志来指定CA.

还有一个限制。服务器不是HTTP服务器(它是postgres),否则我只会使用curl --insecure

我尝试使用-verify标记,因为根据OpenSSL's documentation

  

要使用的验证深度。这指定了服务器证书链的最大长度并启用了服务器证书验证。目前,验证操作在错误之后继续,因此可以看到证书链的所有问题。作为副作用,由于服务器证书验证失败,连接永远不会失败。

它声称在所有错误之后继续,所以可以看到所有问题。但是,我得到的只是:

1737:error:140790E5:SSL routines:SSL23_WRITE:ssl handshake failure:s23_lib.c:188:

这是我使用或不使用-verify时收到的错误消息。

那么如何查看服务器提供的证书?

0 个答案:

没有答案