Збережіть віддалений сертифікат SSL за допомогою командного рядка Linux


28

Чи можете ви придумати будь-який метод командного рядка Linux для збереження сертифіката, представленого сервером HTTPS? Щось уздовж лінії curl / wget / openssl встановлюють SSL-з'єднання і зберігають cert, а не вміст відповіді HTTP.

Еквівалент того, що я шукаю, було б перейти на сайт HTTPS, двічі клацнути на піктограмі браузера "захищений сайт" та експортувати сертифікат. Окрім цілі, тут є зробити це неінтерактивно.

Спасибі, Джіме

Відповіді:


40

Щось на зразок:

openssl s_client -servername remote.server.net -connect remote.server.net:443 </dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' >/path/to/certificate.pem

Це те, що я використовую з fetchmail для отримання сертифіката сервера IMAP або POP3, здатного на SSL (за винятком випадків, я не використовую порт 443)

(Зверніть увагу, що для надсилання запиту з підтримкою SNI -servernameнеобхідний параметр "резервний" openssl.)


1
Будь-який спосіб отримати повний ланцюжок?
Колін Андерсон

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.