如何将自签名证书添加到 git-bash 中的捆绑包中?

如何将自签名证书添加到 git-bash 中的捆绑包中?

尝试使用 git-bash 在 Windows 机器上更新 git 时git update-git-for-windows失败,并显示以下消息curl

curl: (60) SSL certificate problem: self signed certificate in certificate chain
More details here: https://curl.se/docs/sslcerts.html

curl failed to verify the legitimacy of the server and therefore could not
establish a secure connection to it. To learn more about this situation and
how to fix it, please visit the web page mentioned above.

我预料到了这个问题,因为我们使用自签名证书。我知道这不好,但我无法改变它。

那么,我在哪里可以找到 curl 或 git 使用的证书包并向其中添加我自己的受信任的根证书?

答案1

第一步是了解您的配置。您将看到您的配置值以及这些值的存储位置。

$ git config --list --show-origin --show-scope
system file:C:/Program Files/Git/etc/gitconfig <key>=<value>
system file:C:/Program Files/Git/etc/gitconfig <key>=<value>
...
global file:C:/Users/<USERNAME>/.gitconfig <key>=<value>
global file:C:/Users/<USERNAME>/.gitconfig <key>=<value>
...

寻找钥匙http.sslbackend并且http.sslcainfo 只有http.sslbackend=openssl那时http.sslcainfo才会发挥作用。

它在命令行上看起来是这样的

system  file:C:/Program Files/Git/etc/gitconfig http.sslbackend=openssl
system  file:C:/Program Files/Git/etc/gitconfig http.sslcainfo=C:/Program Files/Git/mingw64/ssl/certs/ca-bundle.crt

现在您还可以看到该文件,您可以在其中添加您的 CA,打开ca-bundle.crt并将您的公司证书附加到其中。

现在证书链中的自签名证书不再存在问题。

相关内容