Назад | Перейти на главную страницу

Получение SSL-сертификата с удаленного сервера с OpenSSL

Я столкнулся со странной проблемой, и я не могу об этом вертеться. Я пытаюсь проверить сертификат SSL с помощью OpenSSL из командной строки:

openssl s_client -showcerts -connect server.org:443

Но независимо от того, какой домен на этом сервере я называю таким образом, он всегда доставляет сертификат первого (в алфавитном порядке) домена на этом сервере, даже если этот конкретный домен имеет собственный сертификат. Также, когда я вызываю любой из этих URL-адресов в браузере, все работает правильно

Есть идеи, что я сделал не так?

С уважением, Радек

Вероятно, вы используете более старую версию openssl, то есть версию 1.0.2 или ниже. С ними вы должны явно использовать -servername вариант, чтобы расширение SNI использовалось для объявления ожидаемого имени хоста в рукопожатии TLS:

openssl s_client -connect example.com:443 -servername example.com

В более поздних версиях openssl эта опция включена по умолчанию.