如何解决unable to get local issuer certificate

2023-07-25 15:49:05 浏览数 (3)

解决curl-60 SSL证书问题 "unable to get local issuer certificate" 需要确保在执行HTTPS请求时,curl能够正确验证服务器证书。该错误通常是由于缺少服务器证书链上的中间证书或根证书导致的。

参考文章:https://www.howtouselinux.com/post/curl-60-ssl-certificate-problem-unable-to-get-local-issuer-certificate

以下是解决方法:

  1. 更新CA证书: 从操作系统或curl本身更新CA证书库。这样可以确保系统能够正确验证服务器证书。
  2. 使用-cacert参数: 在curl中,你可以使用-cacert参数指定自定义CA证书的路径。首先,从浏览器导出服务器证书链中的根证书,并将其保存为.pem格式。然后将路径传递给-cacert参数。
代码语言:shell复制
curl -cacert /path/to/root_ca.pem https://example.com
  1. 禁用证书验证: 在测试或特定情况下,你可以选择禁用证书验证。但请注意,这样做会使连接变得不安全,并不推荐在生产环境中使用。
代码语言:shell复制
curl -k https://example.com
  1. 检查网络代理: 如果你的网络使用代理,确保代理配置正确,并不会干扰SSL证书验证。

请注意,忽略证书验证或使用自定义CA证书都是暂时解决方案,不推荐在生产环境中长期使用。在生产环境中,请确保服务器证书的合法性和正确性,并正确配置SSL证书验证。这样可以确保数据传输的安全性和完整性。

我们整理了一份Linux学习的pdf文件,放在下面的路径,可以自提:

https://www.howtouselinux.com/post/linux-commands-for-linux-beginners-cheat-sheet

0 人点赞