Git clone use gitlab self-signed CA throws error: requested domain name does not match the server's certificate

Git clone use gitlab self-signed CA throws error: requested domain name does not match the server's certificate

根据一些人的建议我已经知道,禁用 http.sslVerify 是个坏主意,根据一些 post,最佳做法是将 gitlab 服务器 CA 添加到本地,所以我尝试了不同的方法:

  1. 将 CA 文件路径添加到 git 配置
git config --global http.sslCAInfo /home/yp/git-certs/rd.crt
git clone https://10.xx.xx.xx/xxDepart/xxProject.git
  1. 直接git克隆携带CA文件路径:
GIT_SSL_CAINFO=/home/yp/git-certs/rd.crt git clone https://10.xx.xx.xx/xxDepart/xxProject.git

但是两种方式都给我同样的错误: 无法与对等方安全通信:请求的域名与服务器的证书不匹配。 我认为这可能是 git 实验室服务器问题或 CA 问题,而不是本地 git 配置错误。有没有人以前遇到过此类问题,可以分享解决方案吗? 我使用的是 CentOS7.6 服务器,git 版本是 2.8

尝试 display the SAN (Subject Alternative Name) of your certificate

openssl x509 -text -noout -in cert.pem \
        -certopt no_subject,no_header,no_version,no_serial,no_signame,no_validity,no_issuer,no_pubkey,no_sigdump,no_aux

如果不包含您的 IP 地址,证书将被视为无效。