응답을 받기 위해 사용했던 시나리오가 있는데 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:
...