Curl は応答を返しません。

Curl は応答を返しません。

応答を受信するために使用したシナリオがありますが、curl --noproxy "*" https://..突然今すぐ使用すると、応答を返さずに代わりに表示されます。

curl: (60) Peer certificate cannot be authenticated with known CA certificates
More details here: http://curl.haxx.se/docs/sslcerts.html

今私がそれを使用すると、curl -k https://それは私に反応します。何が間違っていて、考えられる原因が何であるかよくわかりません。

安全でないオプションを使用しない方法をご存知ですかcurl -k

答え1

を試してみてください--cacert /path/to/crt/file。この-kオプションは通常自己署名証明書に使用されますが、私はいつも--cacert

答え2

最近これが起こった場合、リモート証明書は証明書ストアに存在しない機関によって署名された可能性があります。 -kは、リモートサイトが正当であると確信している場合のオプションです。しかし:

  • CA証明書パッケージを更新するには、システムを更新してみてください。
  • openssl s_clientを使用すると、SSLデバッグのためのさまざまなオプションを持つ証明書に関する情報を取得できます。

    例: $openssl s_client -connect google.com:443

    • また、次のようにコマンドを拡張して証明書の詳細を取得することはできません。

    $ openssl s_client -connect google.com:443 | $ openssl s_client -connect google.com:443 |

これには、次の有効期限が含まれます。

... Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 5230064140940427690 (0x4894eba0494341aa)
    Signature Algorithm: sha256WithRSAEncryption
        Issuer: C=US, O=Google Inc, CN=Google Internet Authority G2
        Validity
            Not Before: Feb 13 10:55:29 2018 GMT
            Not After : May  8 10:40:00 2018 GMT
        Subject: C=US, ST=California, L=Mountain View, O=Google Inc, CN=*.google.com
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
                Public-Key: (2048 bit)
                Modulus:
                    00:d7:14:f9:54:c2:48:c4:4c:be:22:b1:59:23:79:
      ... 

関連情報