Практическое использование команды OpenSSL в Linux

Опубликовано: 16 Февраля, 2022

OpenSSL - это программная библиотека или инструментарий для криптографии, которые делают обмен данными по компьютерным сетям более безопасным. Программа OpenSSL - это инструмент командной строки для использования различных криптографических функций криптографической библиотеки OpenSSL из оболочки. Обычно он используется для протоколов Transport Layer Security (TSL) или Secure Socket Layer (SSL). OpenSSL лицензируется по лицензии apache-style, что означает, что при некоторых простых условиях лицензии можно использовать инструментарий в коммерческих или некоммерческих целях.

Вы можете проверить установленную версию команды OpenSSL, используя следующую команду

$ openssl версия

Практическое использование команды OpenSSL

1. Создать закрытый ключ RSA.

$ openssl genrsa -out private.key 2048

Он сгенерирует файл ключа RSA с именем private.key . Здесь мы использовали 2048 для обеспечения высокой безопасности. Можно использовать даже бит меньшего размера.

2. Создайте новый закрытый ключ и CSR.

$ openssl req -nodes -newkey rsa: 2048 -keyout custom.key -out custom.csr

Он запросит такие данные, как код страны, название штата и местности, название организации, ваше имя, адрес электронной почты и т. Д. И после ввода всех данных он сгенерирует 2 файла: один с расширением CSR, а другой с расширением ключа, представляющим CSR. и закрытый ключ соответственно.

3. Создайте новый закрытый ключ и самоподписанный сертификат.

$ openssl req -x509 -sha512 -nodes -days 730 -newkey rsa: 2048 -keyout custom.key -out custom.pem

Он запросит такие детали, как код страны, название штата и местности, название организации, ваше имя, адрес электронной почты и т. Д. И после ввода всех данных он сгенерирует 2 файла: один с расширением PEM, а другой с расширением ключа, представляющим самоподписанный Сертификат и закрытый ключ соответственно. В этом примере мы установили срок действия 730 дней, но если вы не упомянули об этом, по умолчанию он будет иметь значение один месяц. Вы даже можете изменить алгоритм шифрования по своему усмотрению. В этом примере мы использовали алгоритм SHA512.

4. Проверка файла CSR.

$openssl req -noout -text -in custom.csr

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

5. Проверка файла закрытого ключа.

$ openssl rsa -in private.key -check

Он проверит и проверит ключ RSA, и, если он в порядке, отобразит следующий результат.

6. Проверка органа, подписывающего сертификаты.

$ openssl x509 -in custom.pem -noout -issuer -issuer_hash

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

7. Проверка значения хэша сертификата.

$ openssl x509 -noout -hash -in custom.pem

Он отобразит хэш-значение файла сертификата pem.

8. Преобразование PEM в формат DER.

$ openssl x509 -outform der -in custom.pem -out custom.der

Он изменит расширение сертификата с .pem на .der и создаст новый файл с расширением .der.

9. Проверка даты истечения срока действия сертификата PEM-файла.

$ openssl x509 -noout -in custom.pem -dates

Он будет отображать действительный с и действительный до даты сертификата.