Viji
@Viji
DevOps Engineer

Как разобрать данные ssl записи для домена?

Делаю экстракцию сертификатов для домена с помощь openssl

$ openssl s_client -showcerts -connect d.codeartifact.eu-north-1.amazonaws.com:443

CONNECTED(00000005)
depth=2 C = US, O = Amazon, CN = Amazon Root CA 1
verify return:1
depth=1 C = US, O = Amazon, CN = Amazon RSA 2048 M02
verify return:1
depth=0 CN = d.codeartifact.eu-west-2.amazonaws.com
......................................................................................


На выхлопе он показывает 2 сертификата Amazon Root CA 1 и Amazon RSA 2048 M02.

1. Я правильно понимаю, что первый это Root сертификат от авторити? А второй Amazon RSA 2048 M02?
2. Мне нужно скачивать все root and intermediate CA certificates для данного домена - желательно командой, возможно ли это? И сохранять все в один файл для другого приложения, которое использует CA сертификаты для проверки аутентичности ssl соединения
  • Вопрос задан
  • 114 просмотров
Пригласить эксперта
Ответы на вопрос 2
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
В полном выводе вашей команды присутствуют все сертификаты. Это строки
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----

Цепочка сертификатов прослеживается по полю Issuer. У вас конечный сертификат:
CN = d.codeartifact.eu-west-2.amazonaws.com
промежуточные:
C = US, O = Amazon, CN = Amazon RSA 2048 M02
C = US, O = Amazon, CN = Amazon Root CA 1
корневой:
C = US, ST = Arizona, L = Scottsdale, O = "Starfield Technologies, Inc.", CN = Starfield Services Root Certificate Authority - G2
.
Ответ написан
3vi1_0n3
@3vi1_0n3
Вот так скачать все одной командой:
echo "" | openssl s_client -showcerts -connect d.codeartifact.eu-north-1.amazonaws.com:443 | sed -ne '/-----BEGIN CERTIFICATE-----/,/-----END CERTIFICATE-----/p' > certs.txt


Если сертификат самого сервера не нужен, то можно его удалить из этого файла (certs.txt), но я, честно говоря, оставил бы, если вам надо проверять аутентичность соединения именно с этим доменом.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы