【问题标题】:curl: (60) Peer's Certificate issuer is not recognizedcurl: (60) 对等的证书颁发者无法识别。
【发布时间】:2018-05-20 11:50:06
【问题描述】:

我正在尝试按照https://www.microsoft.com/net/learn/get-started/linuxcentos 上的步骤在centos 7 上安装.net core SDK 2.0.0

当我运行第一个命令时sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc

得到这个错误:

`curl: (60) Peer 的证书颁发者无法识别。 更多细节在这里:http://curl.haxx.se/docs/sslcerts.html

curl 默认执行 SSL 证书验证,使用“bundle” 证书颁发机构 (CA) 公钥(CA 证书)。如果默认 捆绑文件不够用,您可以指定一个备用文件 使用 --cacert 选项。 如果此 HTTPS 服务器使用由 CA 签名的证书 捆绑包,证书验证可能由于以下原因而失败 证书有问题(它可能已过期,或者名称可能 与 URL 中的域名不匹配)。 如果您想关闭 curl 对证书的验证,请使用 -k(或 --insecure)选项。 错误:https://packages.microsoft.com/keys/microsoft.asc:导入读取失败(2)`

我在公司代理后面,这个错误似乎与 SSL 证书和 curl 有关。但我不知道如何解决它。 当我使用 curl 或 wget 下载 https url 时也会出现类似的错误。

【问题讨论】:

    标签: curl https .net-core


    【解决方案1】:

    在我的情况下,我使用的自签名 ssl 证书已过期,因此在 cent OS 7 上我运行以下命令,但将天数从“-days 365”增加到“-days 1400”,这大约是 4 年的保证.

    sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/apache-selfsigned.key -out /etc/ssl/certs/apache-selfsigned.crt
    

    更多信息在这里:https://www.digitalocean.com/community/tutorials/how-to-create-an-ssl-certificate-on-apache-for-centos-7

    【讨论】:

      【解决方案2】:

      检查您的服务器是否有有效的代理设置。

      【讨论】:

      • 欢迎来到 SO。这似乎没有回答 OP,并且可以作为评论发布。详情请查看how-to-answer
      【解决方案3】:

      我遇到了同样的问题,然后只是暂时关闭了 SSL 检查并安装了软件包。但请注意,这是绕过安全措施,因此请谨慎使用。

      sudo vi /etc/yum.conf 
      

      然后在编辑器上添加以下行

      sslverify=false
      

      【讨论】:

      • 对我来说就像宝石一样工作。谢谢。
      • 我需要 sslverify=0 代替
      【解决方案4】:

      你可以这样做:

      wget --no-check-certificate https://packages.microsoft.com/keys/microsoft.asc
      rpm --import microsoft.asc
      

      祝你好运:)

      【讨论】:

        【解决方案5】:

        终于修好了。在此处发布答案作为参考。

        • 导出公司受信任的根证书,扩展名为 .cer。命名外部根证书的东西
        • 使用openssl x509 -in xxx.cer -inform der -outform pem -out xxx.pem 将 ca 文件转换为 .pem 文件

        然后在centos 7 os上:

        • 安装 ca-certificates 包:yum install ca-certificates

        • 启用动态 CA 配置功能:update-ca-trust 强制启用

        • 将导出的 pem 文件添加到 /etc/pki/ca-trust/source/anchors/

        • 使用命令:update-ca-trust extract

        参考文献:

        https://support.ssl.com/Knowledgebase/Article/View/19/0/der-vs-crt-vs-cer-vs-pem-certificates-and-how-to-convert-them

        http://manuals.gfi.com/en/kerio/connect/content/server-configuration/ssl-certificates/adding-trusted-root-certificates-to-the-server-1605.html

        【讨论】:

        • 您怎么知道必须将它们转换为 .pem?您引用的链接使您看起来可以添加 .crt 并更新 CA 存储,无需转换。
        • 谢谢。为我工作!
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2018-05-06
        • 2016-10-30
        • 2019-05-20
        • 2021-05-24
        • 2017-07-19
        相关资源
        最近更新 更多