Практическое использование команды OpenSSL в Linux
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
Он будет отображать действительный с и действительный до даты сертификата.