Aby sprawdzić, czy certyfikat dla google.com został odwołany, wypróbowałem następujące polecenie:
curl https://www.google.com --cacert GeoTrust_Global_CA.pem --crlfile gtglobal.pem -v
, ale mam przerażający błąd „Problem z certyfikatem SSL”:
* About to connect() to www.google.com port 443 (#0)
* Trying 81.24.29.91... connected
* successfully set certificate verify locations:
* CAfile: GeoTrust_Global_CA.pem
CApath: /etc/ssl/certs
* successfully load CRL file:
* CRLfile: gtglobal.pem
* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS handshake, Server hello (2):
* SSLv3, TLS handshake, CERT (11):
* SSLv3, TLS alert, Server hello (2):
* SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
* Closing connection #0
curl: (60) SSL certificate problem, verify that the CA cert is OK. Details:
error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed
More details here: http://curl.haxx.se/docs/sslcerts.html
Myślę, że ten błąd jest nieprawidłowy, ponieważ Google powinien mieć ważny certyfikat.
Czy wiesz, jak mogę wydać polecenie curl, które robi to poprawnie?
Więcej szczegółów
Jeśli zastanawiasz się, dlaczego użyłem tych konkretnych plików (GeoTrust_Global_CA.pem i gtglobal.pem) w poleceniu curl, tak postępowałem:
- Najpierw sprawdziłem, co urząd certyfikacji wydał dla https://www.google.com . Okazuje się, że jest to GeoTrust Global CA;
- Pobrałem stąd główny certyfikat GeoTrust Global CA (jest to plik GeoTrust_Global_CA.pem);
- Pobrałem stąd odpowiednią listę CRL (listę unieważnień certyfikatów) (jest to plik gtglobal.pem).