bg-blog-articles

Самые распространенные команды OpenSSL: Основы

Команды OpenSSL

Давайте окунемся в мир OpenSSL, Вашего надежного союзника в деле защиты данных в Интернете! Независимо от того, новичок Вы или уже имеете некоторый опыт, эта статья станет Вашим простым руководством по наиболее распространенным командам OpenSSL.

Я расскажу о генерации CSR и ключей, управлении сертификатами, конвертации форматов сертификатов и многом другом. Оставайтесь с нами, и скоро Вы будете использовать OpenSSL как профессионал!


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

Общие команды OpenSSL

Начните свое путешествие с OpenSSL, убедившись, что он установлен в Вашей системе, и поняв его версию. Эти базовые команды — Ваши первые шаги на пути к освоению OpenSSL.

Проверьте, установлен ли OpenSSL в Linux

Для дистрибутивов GNU/Linux, использующих пакеты rpm:

rpm -qa | grep -i openssl

Для дистрибутивов GNU/Linux, использующих пакеты deb:

dpkg -l | grep -i openssl

Для Arch Linux используйте:

pacman -Q openssl

Проверьте версию OpenSSL

Версия openssl -a


Управление КСО

Создание и управление запросами на подписание сертификата (CSR) имеет решающее значение в процессе SSL. Узнайте , как генерировать КСО, работать с генерацией КСО без подсказок, проверять их данные и многое другое.

Сгенерируйте CSR для существующего закрытого ключа

openssl req -new -key yourKey.key -out yourCSR.csr

После выполнения команды Вам будет предложена последовательность вопросов. Ответы, которые Вы предоставите, будут включены в CSR.

Отключите подсказки на вопросы при генерации CSR

Сгенерируйте CSR без запроса информации, используя эту команду с указанием конкретных деталей.

openssl req -new -key yourKey.key -out yourCSR.csr \
-subj "/C=US/ST=Utah/L=Lehi/O=Your Company, Inc./OU=IT/CN=yourdomain.com"

Проверьте информацию о КСО

Verify that the CSR contains the correct information with this OpenSSL command before sending it to a Certificate Authority.

openssl req -text -in yourCSR.csr -noout -verify

No OpenSSL to hand, or working from a machine where you would rather not install it? Our CSR decoder returns the same subject, key size, and signature algorithm in the browser.

Сгенерируйте CSR на основе существующего сертификата

openssl x509 -x509toreq -in yourCertificate.crt -out yourCSR.csr -signkey yourPrivateKey.key

Отправьте CSR в ЦС

Используйте эту команду, чтобы отобразить и скопировать Ваш CSR для отправки в центр сертификации.

cat yourCSR.csr


Управление личными и открытыми ключами

Откройте для себя все тонкости работы с закрытыми ключами в OpenSSL. В этом разделе рассматриваются все основные моменты, связанные с ключами, от генерации до декодирования и управления парольными фразами.

Сгенерируйте закрытый ключ с помощью OpenSSL

Create a new private key using the RSA algorithm and specify the key size with this command.

openssl genrsa -out yourPrivateKey.key 2048

To generate your private key, specify the key algorithm, the key size, and an optional passphrase. The standard key algorithm is RSA, but you can also select ECDSA for specific situations.

При использовании алгоритма RSA размер ключа должен составлять 2048 бит, а при использовании алгоритма ECDSA — 256 бит. Любой размер ключа меньше 2048 небезопасен, а большее значение может замедлить работу.

Сэкономьте 10% на SSL-сертификатах

Наконец, Вы должны решить, нужна ли Вам парольная фраза для Вашего закрытого ключа. Обратите внимание, что некоторые серверы не принимают закрытые ключи с парольными фразами.

Когда Вы будете готовы сгенерировать свой закрытый ключ (с помощью алгоритма RSA), выполните приведенные ниже команды:

Просмотр информации о закрытом ключе

cat yourPrivateKey.key

Расшифровка закрытого ключа

Расшифруйте и отобразите Ваш личный ключ в текстовом формате с помощью этой команды.

openssl rsa -text -in yourPrivateKey.key -noout

Извлеките открытый ключ из закрытого ключа

openssl rsa -in yourPrivateKey.key -pubout -out yourPublicKey.key

Создайте сразу закрытый ключ и CSR

openssl req -out yourCSR.csr -new -newkey rsa:2048 -nodes -keyout yourPrivateKey.key

Эта команда генерирует закрытый ключ без ключевой фразы (-keyout yourPrivateKey.key) и код CSR (-out yourCSR.csr).

Удаление парольной фразы из закрытого ключа

openssl rsa -in yourPrivateKey.pem -out yourNewPrivateKey.pem

Проверка закрытого ключа

Проверьте целостность и правильность закрытого ключа с помощью этой команды.

openssl rsa -in yourPrivateKey.key -check

Проверка согласованности между сертификатами, личными ключами и CSR с помощью OpenSSL

Проверка соответствия сертификата закрытому ключу или CSR:

openssl x509 -noout -modulus -in certificate.crt | openssl md5

Убедитесь, что закрытый ключ правильно соответствует определенному сертификату SSL или CSR:

openssl rsa -noout -modulus -in privateKey.key | openssl md5

Убедитесь, что CSR соответствует закрытому ключу и подходит для конкретного сертификата:

openssl req -noout -modulus -in CSR.csr | openssl md5

All three commands print an MD5 hash, and the files share a key pair only when the hashes are identical. One difference means a mismatch. Keep in mind that the modulus check is RSA only: run it against an ECDSA key and OpenSSL returns an error instead of a hash. For ECC keys, or when you would rather verify the key pair without OpenSSL, the Certificate Key Matcher compares the public key fingerprint of all three files inside your browser.


Управление сертификатами

Поймите, как использовать команды OpenSSL для проверки, генерации и верификации сертификатов SSL/TLS, включая проверку SSL-соединений для обеспечения безопасного канала связи.

Проверка сертификата в OpenSSL

Проверьте детали сертификата SSL с помощью этой команды.

openssl x509 -text -in yourCertificate.crt -noout

Сгенерируйте самоподписанный сертификат

req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout yourPrivateKey.key -out yourdomain.crt

Проверьте SSL-соединение

Используйте эту команду для тестирования и диагностики SSL-соединений с сервером.

openssl s_client -connect www.yoursite.com:443

Prefer a point-and-click version? Our SSL Checker runs the same diagnosis, plus certificate chain and cipher details, so you can check your SSL certificate online instead.


Преобразование файлов SSL

Изучите гибкость OpenSSL при преобразовании форматов файлов SSL. В этом разделе Вы познакомитесь с командами OpenSSL для преобразования между различными типами файлов, такими как DER, PEM и PKCS#12.

For a one-off job on a machine without OpenSSL, the SSL Converter handles the same DER, PEM, PKCS#7 and PKCS#12 conversions in your browser.

DER — PEM

openssl x509 -inform der -in yourCertificate.cer -out yourCertificate.pem

PEM — DER

openssl x509 -outform der -in yourCertificate.pem -out yourCertificate.der

PKCS#12 в PEM

openssl pkcs12 -in yourKeyStore.pfx -out yourKeyStore.pem -nodes

Переход от PEM к PKCS#12

openssl pkcs12 -export -out yourCertificate.pfx -inkey yourPrivateKey.key -in yourCertificate.crt -certfile yourCACert.crt

Нижняя линия

Овладение наиболее распространенными командами OpenSSL является основополагающим для совершенствования Ваших навыков в области цифровой безопасности.

От генерации CSR и управления ключами до конвертации сертификатов — рассмотренные нами команды дадут Вам знания, необходимые для уверенной работы со сложностями OpenSSL.

Сэкономьте 10% на SSL-сертификатах при заказе сегодня!

Быстрая выдача, надежное шифрование, 99,99% доверия к браузеру, специализированная поддержка и 25-дневная гарантия возврата денег. Код купона: SAVE10

Детальное изображение дракона в полете
Написано

Опытный автор контента, специализирующийся на SSL-сертификатах. Превращает сложные темы кибербезопасности в понятный, увлекательный контент. Вносите свой вклад в повышение уровня цифровой безопасности с помощью впечатляющих рассказов.