我被困在防火墙后面,所以必须使用HTTPS访问我的GitHub存储库。我在Windows XP上使用cygwin 1.7.7。

我试过把遥控器设置为https://username@github.com/username/ExcelANT.git,但按下输入密码的提示,但输入后没有任何反应。 https://username:<密码>github.com/username/ExcelANT.git和克隆空回购从零开始,但每次它给我同样的错误

错误:SSL证书有问题,请检查CA证书是否正确。细节: SSL例程:SSL3_GET_SERVER_CERTIFICATE:访问https://github.com/username/ExcelANT.git/info/refs时证书验证失败

打开GIT_CURL_VERBOSE=1会给我

* About to connect() to github.com port 443 (#0) * Trying 207.97.227.239... * successfully set certificate verify locations: * CAfile: none CApath: /usr/ssl/certs * SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed * Expire cleared * Closing connection #0 * About to connect() to github.com port 443 (#0) * Trying 207.97.227.239... * successfully set certificate verify locations: * CAfile: none CApath: /usr/ssl/certs * SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed * Expire cleared * Closing connection #0 error: SSL certificate problem, verify that the CA cert is OK. Details: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed while accessing https://github.com/username/ExcelANT.git/info/refs

fatal: HTTP request failed

这是我的防火墙有问题吗,cygwin还是什么?

我没有在Git配置中设置HTTP代理,但是它是一个ISA服务器,需要NTLM身份验证,不是基本的,所以除非有人知道如何强制Git使用NTLM,否则我就完了。


当前回答

在CentOS 5上。X,一个简单的yum update openssl更新了openssl包,更新了系统ca-bundle。CRT文件,帮我解决了这个问题。

其他发行版可能也是如此。

其他回答

我知道最初的问题列出了Cygwin,但这是CentOS的解决方案:

curl http://curl.haxx.se/ca/cacert.pem -o /etc/pki/tls/certs/ca-bundle.crt

来源:http://eric.lubow.org/2011/security/fixing-centos-root-certificate-authority-issues/

我尝试了所有的方法,最终我在主机文件中看到了github的随机入口。删除别名解决了这个问题

etc, etc % systemroot % \ system32 drivers \ \ hosts

如果你使用的是基于debian的操作系统,你可以简单地运行

安装ca-certificates

我在Solaris Express 11上也遇到过同样的问题。我花了一些时间,但我设法找到了需要放置证书的地方。根据“/etc/openssl/openssl.cnf”,证书路径为“/etc/openssl/certs”我放置了使用Alexey的上述建议生成的证书。

你可以在命令行上使用openssl验证事情是否正常工作:

openssl s_client -connect github.com:443

我也有同样的问题。 证书导入或取消ssl验证的命令不起作用。 原来是过期的网络代理密码。 代理配置条目。在我的Windows用户配置文件中的.gitconfig文件中。 我只是删除了整个条目,它又开始工作了。