【转载】【有用】gitee 拉取或push 代码https 协议的地址发生证书错误的解决(server certificate verification failed. CAfile: /etc/s)

2023-12-20

问题描述:
从GitHub地址下载内容,提示服务器证书验证失败,没有CRLfile。
curl: (60) server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none

问题原因:
根本原因是计算机不信任对Gitlab服务器上使用的证书进行签名的证书颁发机构。
这并不意味着证书可疑,它可以是自签名的,也可以由不在系统的CA列表中的机构/公司签名。

curl performs SSL certificate verification by default, using a "bundle" of Certificate Authority (CA) public keys (CA certs).
#curl默认情况下使用“捆绑包”执行SSL证书验证,证书颁发机构(CA)公共密钥(CA证书)。
If the default bundle file isn't adequate, you can specify an alternate file using the --cacert option.
#如果默认捆绑文件不足,您可以指定备用文件使用--cacert选项。
If this HTTPS server uses a certificate signed by a CA represented in the bundle, the certificate verification probably failed due to a problem with the certificate (it might be expired, or the name might not match the domain name in the URL).
#如果此HTTPS服务器使用由表示为捆绑软件,证书验证可能由于证书有问题(证书可能已过期,或者名称可能与网址中的域名不匹配)。
If you'd like to turn off curl's verification of the certificate, use the -k (or --insecure) option.
#如果您要关闭curl对证书的验证,请使用 -k(或--insecure)选项。
1
2
3
4
5
6
7
8
问题解决:

方案一:
关闭系统的安全认证。
能解决所有证书问题,操作简单,系统面临一定的风险。
#终端输入命令
export GIT_SSL_NO_VERIFY=1
1
2
方案二:
告诉计算机(系统)信任这个网站的证书(颁发机构)。
能解决GitHub网站证书的问题,且继续保证系统安全,相对复杂。
操作方法以及更多讨论详情,这里有一个看起来很好地回答(并没有亲测)。
Pete Clark:“如果在ubuntu机器上运行,则可能是Web服务器的CA证书不在/etc/ssl/certs/ca-certificates.crt文件中。我遇到了一个托管在Web服务器上的git服务器,该服务器具有由www.incommon.org签名的SSL证书。您可以将中间证书添加到ca-certificates文件中,如下所示:”
wget http://cert.incommon.org/InCommonServerCA.crt
openssl x509 -inform DER -in InCommonServerCA.crt -out incommon.pem
cat /etc/ssl/certs/ca-certificates.crt incommon.pem > ca-certs2.crt
sudo cp /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt.bak
sudo cp ca-certs2.crt /etc/ssl/certs/ca-certificates.crt
————————————————
版权声明:本文为CSDN博主「AUKO16」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_46439193/article/details/105140587

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【转载】【有用】gitee 拉取或push 代码https 协议的地址发生证书错误的解决(server certificate verification failed. CAfile: /etc/s) 的相关文章

  • tcpdump 是否受 iptables 过滤影响?

    如果我的开发机器有iptables规则到FORWARD一些数据包 这些数据包是否被 tcpdump 捕获 我有这个问题 因为我知道存在其他链称为INPUT如果数据包路由到 它会过滤发往应用程序的数据包FORWARD链 它会到达吗tcpdum
  • Linux 上的静态 Qt5 构建:部署时如何处理字体?

    我使用这些配置选项创建了 Qt 5 2 0 库的静态版本 Ubuntu 12 04 开源 确认许可 force pkg config 发布 静止的 前缀 home juzzlin qt5 无icu opengl桌面 无油嘴滑舌 辅助功能 n
  • 将 Visual Studio 在线 Git 存储库集成到 Android Studio 1.0.2

    我正在使用 Visual Studio Online 进行开发过程 我想将我的 Android Studio 1 0 2 代码集成到其中 但是 据我所知 Android Studio 没有 TFS 插件 这就是为什么我想使用 Git 进行源
  • 如何在 Ubuntu 中创建公共 HTML 文件夹?

    简单的问题 但由于某种原因我无法在谷歌上找到确切的答案 我在 Slicehost 上安装了全新的 Ubuntu 并且想在我的主目录中为包含一堆静态 HTML 文件的简单网站创建一个公共目录 我该怎么做呢 只是打字的问题吗mkdir publ
  • Linux 上的 Pervasive ODBC 错误 [01000][unixODBC][驱动程序管理器]无法打开 lib '/usr/local/psql/lib/odbcci.so':找不到文件

    我正在尝试让 Pervasive v10 客户端 ODBC 在 Centos 6 上运行 据我所知 没有 64 位 ODBC 客户端 因此我必须使用 32 位客户端 我终于成功安装了它 但尝试使用时出现以下错误 isql v mydsn 0
  • 使用 TFS REST API 获取 Git 提交的最新关联工作项

    我正在尝试获取关联的工作项使用 TFS REST API 进行 GIT 提交 https www visualstudio com en us docs integrate api git commits 我的请求 URL 如下所示 htt
  • 从 ttyUSB0 写入和读取,无法得到响应

    我对 Linux tty 不太有经验 我的环境是带有丰富 USB 串行的 Raspbian 什么有效 stty F dev ttyUSB0 38400 cu l dev ttyUSB0 s 38400 cu to dev ttyUSB0作品
  • http.h:6:23: 致命错误:curl/curl.h:没有该文件/目录

    我在 CentOS 7 中下载 git 包 wget https www kernel org pub software scm git git 2 0 1 tar gz tar xzf git 2 0 1 tar gz 当我编译git时
  • C 语言的符号表

    我目前正在开发一种执行模式匹配的静态分析工具 我在用Flex https github com westes flex生成词法分析器 我编写了代码来管理符号表 我不太有经验C 所以我决定将符号表实现为线性链表 include
  • 合并 BPM 图表的最佳实践

    我们在 Java 环境中使用 Alfresco 活动图 这些图是有版本的 我们确实使用 GIT 我们经常会遇到合并分支的合并冲突 解决这个问题确实很痛苦 因为我们必须比较文件的文本内容来检查差异 有时 重新应用更改比合并更轻松 是否有合并此
  • 如何让 git 显示作者日期指定日期范围内的提交?

    显然this https stackoverflow com a 11189286 281545 git log all after
  • 如何恢复已删除的远程分支

    我们的远程主分支被删除 我有主存储库的本地副本 但它已经过时了 我可以通过将最后一个已知的提交哈希值插入 URL 来查看 github 中的分支 但未能成功恢复它 我尝试了几个步骤来恢复它 git reset hard 16deddc05c
  • Git 中的数据完整性?

    我现在已经多次听到提到 Git 提供数据完整性 但是 这是什么意思 据我所知 git 中的所有对象都是使用 SHA 1 校验和来访问的 并且该校验和是根据文件的内容计算的 这意味着如果文件发生更改 您将得到不同的校验和 但这如何提供数据完整
  • Heroku 应用程序上的 Nodejs Express EACCES 0.0.0.0:80

    我正在尝试在他们的网站上新创建的 Heroku 应用程序上运行 Node 应用程序 我按照他们的步骤操作 但在显示应用程序状态时仍然遇到错误 我跟着Node js 入门 https devcenter heroku com articles
  • 如何使用waf构建共享库?

    我想使用构建一个共享库waf http code google com p waf 因为它看起来比 GNU 自动工具更容易 更简洁 到目前为止 我实际上有几个与我开始编写的 wscript 有关的问题 VERSION 0 0 1 APPNA
  • 内核的panic()函数是否完全冻结所有其他进程?

    我想确认内核的panic 功能和其他类似kernel halt and machine halt 一旦触发 保证机器完全冻结 那么 所有的内核和用户进程都被冻结了吗 是panic 可以被调度程序中断吗 中断处理程序仍然可以执行吗 用例 如果
  • 静态方法的 Java 内存模型

    我来自操作系统和 C 语言背景 在代码编译时 世界很简单 需要处理和理解堆栈 堆文本部分等 当我开始学习 Java 时 我确实了解 JVM 和垃圾收集器 我对静态方法感到很有趣 根据我的理解 类的所有实例都会在堆中创建 然后被清理 但是 对
  • 删除 Xcode 项目的源代码控制

    我在 Xcode 项目上使用源代码控制已经有一段时间了 但现在我不想使用源代码控制 如何从 Xcode 中的项目中删除源代码控制 有三种方法 方法 1 将禁用所有项目的源代码管理 方法 2 将删除所有项目的单个存储库的链接 方法 3 将删除
  • 结帐时出现 Git 错误:“致命:引用不是树”

    当我决定弄清楚为什么我正在从事的项目如此重要时 这一切就开始了 我运行了以下脚本 git rev list objects all git cat file batch check objecttype objectname objects
  • 绕过 dev/urandom|random 进行测试

    我想编写一个功能测试用例 用已知的随机数值来测试程序 我已经在单元测试期间用模拟对其进行了测试 但我也希望用于功能测试 当然不是全部 最简单的方法是什么 dev urandom仅覆盖一个进程 有没有办法做类似的事情chroot对于单个文件并

随机推荐