応答を受信するために使用したシナリオがありますが、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:
...