Утилита openssl#

Описание​#

Утилита openssl используется для применения различных функций библиотеки OpenSSL посредством командной строки.

OpenSSL - это набор инструментов, реализующий сетевые протоколы Secure Sockets Layer (SSL) и Transport Layer Security (TLS) и связанные с ними стандарты.

openssl можно использовать для:

  • создания открытых и закрытых ключей, параметров и управления ими;

  • операций с открытым ключом;

  • создания сертификатов X.509, зашифрованных запросов на выпуск сертификатов и списков отозванных сертификатов;

  • вычисления дайджеста сообщений и кодов аутентификации сообщений;

  • шифрования и дешифрования с помощью клиентских и серверных тестов SSL/TLS;

  • обработки почты с подписью по стандарту шифрования S/MIME (Secure/Multipurpose Internet Mail Extensions) или зашифрованной почты;

  • запросов временных меток, их генерации и проверки.

Синтаксис openssl:

openssl <command>

Где <command> - команда.

Команды#

Часто используемые команды утилиты представлены в таблице ниже.

Команды openssl#

Команда

Описание

asn1parse

Синтаксический анализ последовательности ASN.1 (Abstract Syntax Notation One - язык для описания абстрактного синтаксиса данных)

ca

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

crl

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

enc

Шифрование, расшифровка и кодирование

genpkey

Генерация закрытого ключа или параметров

list

Перечисление алгоритмов и функций

passwd

Генерация хешированных паролей

pkey

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

req

Управление запросами на подпись сертификатов

smime

Обработка почты S/MIME

х509

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

Примеры использования#

  • Для создания запроса на подпись сертификата CSR.csr для существующего приватного ключа privateKey.key введите команду:

    openssl req -out CSR.csr -key privateKey.key -new
    

    Где опции req:

    • -out - осуществить вывод в указанный файл;

    • -key - использовать уже существующий ключ;

    • -new - создать новый запрос.

  • Для просмотра данных сертификата cert.crt введите команду:

    openssl x509 -noout -text -in cert.crt
    

    Где опции x509:

    • -noout - не выводить результаты команды и закодированное содержимое;

    • -text - вывести сертификат в виде обычного текста;

    • -in - указать имя файла, из которого будет считываться сертификат.

  • Для генерации приватного ключа RSA с использованием параметров по умолчанию и сохранением в файл rootCA.key введите команду:

    openssl genpkey -algorithm RSA -out rootCA.key
    

    Где опции genpkey:

    • -algorithm - использовать алгоритм с открытым ключом - в данном случае RSA;

    • -out - вывести закрытый ключ в указанный файл.

  • Для генерации хеш-пароля для пароля yourpass введите команду:

    openssl passwd -1 yourpass
    

    Где опция -1 для genpkey означает использование алгоритма шифрования паролей BSD (Berkeley Software Distribution - система распространения ПО) на основе MD5 (Message Digest 5 - алгоритм хеширования).

Дополнительная информация#

Дополнительную информацию можно получить, выполнив команду:

man openssl

Или:

openssl --help