Перейти к основному содержимому

showcert & gencert — удобный инструмент для работы с SSL-сертификатами

·374 слов·2 минут·
logo

В этой статье мы расскажем о двух удобных CLI-утилитах — showcert и gencert, которые помогут вам легко читать, проверять и генерировать SSL-сертификаты. Эти инструменты отлично подходят как для повседневного использования, так и для автоматизации задач в DevOps-окружении.

Обзор утилит
#

showcert
#

Эта утилита предназначена для чтения и анализа существующих SSL-сертификатов. С её помощью вы можете быстро получить информацию о сертификате удалённого сервера или локального файла.

gencert
#

Утилита gencert служит для генерации самоподписанных сертификатов. Она позволяет создавать ключи и сертификаты с гибкими настройками, включая возможность подписи через собственный центр сертификации (CA).

Установка
#

Для установки обеих утилит используется pipx, который позволяет запускать Python-приложения в изолированных окружениях:

pip install pipx

После этого установите showcert следующей командой:

pipx install showcert

Использование
#

showcert
#

Проверка сертификата сайта
#

Чтобы проверить сертификат сайта, просто передайте доменное имя в качестве аргумента:

showcert blog.tatarinovms.space

Эта команда отобразит подробную информацию о сертификате указанного хоста.

Сохранение full chain в формате PEM
#

Если вы хотите сохранить полную цепочку сертификатов удалённого сервера в формате .pem, используйте флаг --chain и перенаправьте вывод в файл:

showcert --chain -o pem ya.ru > ya.ru.pem

gencert
#

Генерация самоподписанного сертификата
#

Самый простой способ создать самоподписанный сертификат — указать доменное имя:

gencert example.ru www.example.ru

Это создаст ключ и сертификат для домена example.ru и его поддомена www.example.ru.

Раздельное сохранение ключа и сертификата
#

Если вы предпочитаете иметь отдельные файлы для приватного ключа и сертификата, используйте опции --key и --cert:

gencert example.ru --key example.ru.key --cert example.ru.pem

Использование собственного CA
#

Если вы хотите подписать сертификат своим центром сертификации, выполните:

gencert --ca "MyCA"

Это создаст корневой CA с названием MyCA.

Создание сертификата с использованием существующего CA
#

Для выпуска сертификата, подписанного вашим собственным CA, используйте параметры --cacert и --cakey:

gencert example.ru --key example.ru.key --cert example.ru.pem --cacert MyCA.pem --cakey MyCA.key

Эта команда создаёт ключ и сертификат для example.ru, подписанные ранее созданным центром сертификации.

Заключение
#

showcert и gencert — это мощные и удобные инструменты для работы с SSL-сертификатами в командной строке. Они экономят время при тестировании, разработке и администрировании защищённых сервисов. Благодаря простому интерфейсу и гибким настройкам эти утилиты будут полезны как начинающим, так и опытным разработчикам и системным администраторам.

Если вы работаете с TLS/SSL в своём проекте, обязательно попробуйте эти инструменты. Они помогут сделать управление сертификатами проще и быстрее.

Related