gpt4 book ai didi

ssl - 为什么我们得到 "tls handshake error using curl"?

转载 作者:太空宇宙 更新时间:2023-11-03 13:05:18 24 4
gpt4 key购买 nike

我正在尝试使用 curl 访问我们在内部开发的应用程序的 URL,并在我看到的服务器上访问

http:来自 1.2.3.4 远程错误的 TLS 握手错误:tls:未知的证书颁发机构。

只有当我们使用 curl(在 git bash 中)或 wget 到达端点时才会发生这种情况。当我们在 Windows 上使用 IE 时,它工作得很好。我什至尝试使用 native SSL 库(应该与 IE 相同)重新安装 git bash,但仍然收到相同的错误消息。

甚至尝试下载 curl-ca-bundle.crt 文件并保存到与 curl 二进制文件相同的位置,或者甚至直接告诉它使用 curl --cacert 选项使用此文件,但仍然没有任何乐趣。

我比较了 IE 报告的根证书和 curl-ca-bundle.crt 中的根证书,它们看起来一样(它们排列不完全相同,但它们在它们在 BEGIN 和 END 标记之间,一个在屏幕上更宽,因此如果有意义的话使用更少的行)。

希望有人知道接下来要尝试什么,因为我们两个人整个下午都在为此焦头烂额。

wget 也给出错误信息:-

$ wget https://bler.com/admin/user
--2018-09-03 15:53:43-- https://bler.com/admin/user
正在连接到 132.146.1.142:8090... 已连接。
错误:无法验证 oss.dns.networks.bt.com 的证书,由“CN=DigiCert SHA2 Secure Server CA,O=DigiCert Inc,C=US”颁发:
无法在本地验证发行人的权限。
要不安全地连接到 oss.dns.networks.bt.com,请使用“--no-check-certificate”。

我们正在使用本地代理服务器,并且设置了 HTTP_PROXY。它必须使用代理,因为我们可以看到我们正在达到终点。

最佳答案

我也有同样的错误。当您在 Golang Web 服务器上安装唯一证书时会出现此问题。您必须改用证书链。

例如,Letsencrypt 给出了“cert.pem”和“fullchain.pem”。 “cert.pem”在浏览器中有效,但 curl 无法使用此文件(curl:(60)SSL 证书问题:无法获取本地颁发者证书)。 “fullchain.pem”在浏览器和 curl 中运行良好。

关于ssl - 为什么我们得到 "tls handshake error using curl"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52152225/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com