После выполнения какой-либо команды в AWS CLI, например aws s3 ls
, вы можете получить такую ошибку:
SSL validation failed for <endpoint_url> [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed
В качестве быстрого обхода этой ошибки в AWS CLI можно воспользоваться опцией --no-verify-ssl
:
$ aws s3 ls --no-verify-ssl
Но поскольку это не безопасно, использование этой опции вызовет следующее предупреждение:
InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
Дельный Совет: Экспорт SSL-сертификата сайта! Читать далее →
AWS CLI: SSL Validation Failed
Для использования AWS CLI с проверкой HTTPS-сертификатов необходимо указать путь к CA bundle (цепочке сертификатов, состоящей из корневого и промежуточного сертификата соответствующего центра сертификации).
Это можно сделать, задав переменную окружения AWS_CA_BUNDLE
:
Linux: $ export AWS_CA_BUNDLE="/data/ca-certs/ca-bundle.pem" Windows: PS C:\> setx AWS_CA_BUNDLE C:\data\ca-certs\ca-bundle.pem
Либо используя опцию --ca-bundle
из командной строки:
$ aws s3 ls --ca-bundle "/data/ca-certs/ca-bundle.pem"
Либо задав ca_bundle
в конфигурационном файле AWC CLI:
$ nano ~/aws/.config $ cat ~/aws/.config [default] ca_bundle = /data/ca-certs/ca-bundle.pem