【问题标题】:how can I resolve "the CRLfile:none" the error when I do curl command?执行 curl 命令时如何解决“CRLfile:none”错误?
【发布时间】:2019-06-26 19:32:41
【问题描述】:
curl -X GET --header 'Accept: application/json' --header 'Authorization: Bearer 2118b878-46a8-3b9d-a911-8ac18a0b13cf' 'https://172.17.0.1:8243/V1.0.2/stock/getParam?age=123'

curl: (60) 服务器证书验证失败。 CAfile:/etc/ssl/certs/ca-certificates.crt CRLfile:无

我在 API MANAGER PLATFORM 上设计了一个 API 之后,我执行 curl 命令并且有上面的日志。如何解决证书?

【问题讨论】:

  • 希望回复..
  • 您必须首先检查您的 /etc/ssl/certs/ca-certificates.crt 文件,如果存在并且您是否具有读取权限。这是关于证书的问题,因此请检查服务器证书以及您是否有与服务器证书共享的证书颁发机构。
  • @Mario Santini 。证书可以读取。
  • 按照答案的建议,您必须验证服务器证书。然后如果是自签名的,则必须在 curl 命令中将此证书作为可信证书提供。如果由证书颁发机构签名,请导入正确的证书,以便您的 curl 可以接受服务器证书。
  • 我使用 api manager 中的默认配置。如何验证证书是自签名证书还是由证书颁发机构签名的证书?

标签: wso2 wso2esb wso2-am api-manager wso2apicloud


【解决方案1】:

您可能在使用自签名证书时遇到问题。

获取证书并使用参数--cacert <certfile> 对其进行身份验证。

要测试您的功能,如果您绝对确定证书没问题,请尝试-k 接受无效证书。但是,您绝不能在生产中和/或如果您不确定它是否是您想要的证书,因为它会剥夺使用 SSL 的价值。

【讨论】:

    【解决方案2】:

    您可以在 curl 命令中使用“-k”选项 [1] 来获得不安全的 ssl 连接。如果要验证服务器证书,则需要使用 optin“--cacert”将信任证书包指向 curl [ 1]

    curl -k -X GET --header 'Accept: application/json' --header 'Authorization: Bearer 2118b878-46a8-3b9d-a911-8ac18a0b13cf' 'https://172.17.0.1:8243/V1.0.2/stock/getParam?age=123'
    

    [1]https://curl.haxx.se/docs/manpage.html

    【讨论】:

    • 如果我在 curl 中使用“-k”选项[1]。那么,我该如何在 API 控制台上进行操作。我无法执行 curl 命令。
    • 如果它是自签名证书,您需要在浏览器中导入/允许证书作为受信任的证书。您可以通过在浏览器中点击 gw url 并接受证书 172.17.0.1:8243 来完成。此后,您可以在 api 控制台中调用 api
    • 我使用 api manager 中的默认配置。如何验证证书是自签名证书还是由证书颁发机构签名的证书?
    • wso2 产品默认使用自签名证书
    • 那么,如果我想在浏览器中导入/允许证书作为受信任证书,首先,默认证书在哪里?
    猜你喜欢
    • 2023-01-11
    • 1970-01-01
    • 2021-04-19
    • 2020-01-04
    • 1970-01-01
    • 1970-01-01
    • 2019-07-22
    • 2019-07-04
    • 2021-08-03
    相关资源
    最近更新 更多