当我在真正的ip下在centos 6上设置gitlab时,我终于遇到了这个错误。
[qzi@host test]$ git push -u origin master
fatal: unable to access 'http://10.41.37.180/git/test.git/': Peer certificate cannot be authenticated with known CA certificates
我该如何解决这个问题?
答案 0 :(得分:8)
您有多种选择:
由于过期或缺少CA证书而导致SSL验证失败的可能性很小。 sudo yum reinstall ca-certificates
可能有所帮助。确保您拥有它们,并且可能使用git config http.sslCAInfo
或http.sslCAPath
将git指向正确的路径。
在gitlab网站上安装正确签名的ceritificate,因此当你看到自签名证书时,你的git-over-HTTPS不会抱怨,这在简单的设置中是相当典型的。
使用git config http.sslVerify false
停用SSL证书验证或在环境中设置GIT_SSL_NO_VERIFY
。
使用git clone git://...
克隆您的回购。
答案 1 :(得分:0)
我使用自签名证书通过https提供git。
在Fedora客户端上,可以使用以下内容,以便客户端信任https证书。 “fluxcoil.net_201404.cert”是包含https certtificate的PEM文件,或者是已签署https证书的自己的CA:
certutil -d sql:/home/chris/.pki/nssdb -A -t "P,," \
-n "fluxcoil.net" -i /home/chris/fluxcoil.net_201404.cert
答案 2 :(得分:0)
设置http."https://10.41.37.180/".sslCAInfo
git config属性:
$ git config http."https://10.41.37.180/".sslCAInfo /path/to/certificate.pem
答案 3 :(得分:0)
它与export GIT_SSL_NO_VERIFY=true
如下兼容:
$ git pull
fatal: unable to access 'https://gitlab.DOMAIN-NAME/TEST_REPO.git/': Peer certificate cannot be authenticated with known CA certificates
$ export GIT_SSL_NO_VERIFY=true
$ git pull
Username for 'https://gitlab.DOMAIN-NAME':
Password for 'https://gitlab.DOMAIN-NAME':