【问题标题】:bitbucket git clone results in 'fatal: unable to access ... could not load PEM client certificate, OpenSSL error error:02001003...'bitbucket git clone 导致“致命:无法访问...无法加载 PEM 客户端证书,OpenSSL 错误错误:02001003...”
【发布时间】:2023-04-02 04:00:01
【问题描述】:

我正在尝试通过 URL 克隆一个 git repo,命令如下:

git clone https://LastName%20FirstName%20CertNumber:Token@bitbucket.../someProject/someProject.git 

但一直遇到同样的错误。

Clone failed: unable to access 'https://LastName%20FirstName%20CertNumber:Token@bitbucket.../someProject/someProject.git/': could not load PEM client certificate, OpenSSL error error:02001003:system library:fopen:No such process, (no key found, wrong pass phrase, or wrong file format?)

我检查了我的 git 配置,所有属性都设置正确:

http.sslcert=someCert.crt
http.sslkey=someKey.key
http.sslcainfo=someCa.cer
http.sslverify=true
http.sslcertpasswordprotected=true

什么可能给我这个错误?

【问题讨论】:

    标签: git http ssl ssh bitbucket


    【解决方案1】:

    错误信息的关键部分是:

    找不到密钥、密码错误或文件格式错误?

    作为mentioned here:

    对于 SSL 验证,您需要:

    • PEM format 中的证书,
    • 其关联的私钥(openssl 格式)和
    • 以 pem 格式签署您的证书的认证机构的根证书。

    可能缺少其中一个元素(尝试为这些文件使用完整的绝对路径,如 seen here),或者格式错误(如 someCa.cer 文件,可能是也可能不是 PEM 格式)。

    【讨论】:

    • 我有这三样东西,并且正在使用绝对路径。我唯一能想到的是,当我调用“git config --list”时,我看到“http.sslcainfo”出现了两次,一个用于“absolutepath/someCa.cer”,另一个指向 C/Program Files /Git/... 但是,当我调用 'git config --global --get-all http.sslcainfo' 时,它只返回 'absolutepath/someCa.cer' 所以我认为这不是问题
    • @iHateGit 检查 git config -l --show-origin --show-scope(以及适用于 Windows 2.27 的 Git)
    • @iHateGit 也可以试试https://Token@bitbucket.../(没有名字)
    猜你喜欢
    • 2019-03-18
    • 2017-02-03
    • 2018-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-10
    相关资源
    最近更新 更多