“tlsv1 alert unknown ca”是什么意思?

gra*_*ski 18 ssl openssl ssl-certificate curl certificate-authority

我正在尝试使用客户端证书进行 curl 请求,如下所示:

curl -E my.pem https://some.site
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息:

curl: (35) error:14094418:SSL routines:SSL3_READ_BYTES:tlsv1 alert unknown ca
Run Code Online (Sandbox Code Playgroud)
  • 这是什么意思?
  • 这个投诉是来自我连接的服务器还是我的 curl 客户端?
  • (我如何确定)在这种情况下 ca 是什么?
  • 我如何使它成为已知的ca?

Ste*_*ich 30

如果在这种情况下服务器向您发送 TLS 警报未知 ca,则服务器不接受您发送的客户端证书( -E my.pem)。原因之一可能是您使用了错误的证书。另一个原因可能是您使用了正确的证书,但未能添加必要的链证书。

  • 服务器也可能存在问题。例如,当将 ssl 与 postgres 一起使用时,并且 CA 证书的通用名称 (`CN=pg.com`) 与 pg 服务器 ssl 证书的`CN` **相同​​*,将会显示相同的错误。 (6认同)