Правильное внедрение SSL имеет решающее значение для безопасности и успеха веб-сайта. А поскольку многие владельцы сайтов впервые знакомятся с SSL, очень важно вооружить их всеми необходимыми инструментами и утилитами. Одним из таких инструментов является OpenSSL. Итак, что такое OpenSSL, и почему он так важен?
Следующее руководство охватывает все аспекты этой полезной утилиты, включая то , как использовать OpenSSL и различные команды OpenSSL для простого и эффективного управления SSL.
Оглавление
Что такое OpenSSL?
OpenSSL – это универсальная криптографическая библиотека, которая предлагает применение протокола TLS с открытым исходным кодом. Он позволяет пользователям выполнять различные задачи, связанные с SSL, включая генерацию CSR (Certificate Signing Request), генерацию закрытых ключей и установку SSL-сертификата.
Для чего используется OpenSSL?
OpenSSL – это инструмент командной строки с открытым исходным кодом, который обычно используется для генерации CSR и закрытых ключей, установки SSL-файлов на Ваш сервер, объединения файлов, преобразования Вашего сертификата в различные форматы SSL, проверки информации о сертификате и устранения любых потенциальных неполадок.
Чтобы установить SSL-сертификат на свой сайт, Вы должны выполнить несколько обязательных шагов, которые одинаковы для любого сервера или почтового клиента. OpenSSL особенно удобен, когда у Вас нет веб-панели управления или Вы хотите упростить весь процесс.
Поскольку не все серверы предоставляют веб-интерфейсы для управления SSL, на некоторых платформах OpenSSL является единственным решением для импорта и настройки Вашего сертификата.
Как использовать OpenSSL
OpenSSL – это все о его командных строках. Все, что Вам нужно сделать, это выучить несколько общих команд OpenSSL, и с каждым новым сертификатом процесс настройки будет становиться все быстрее и проще.
Впервые выпущенный в 1998 году, OpenSSL доступен для систем Linux, Windows, macOS и BSD. Большинство дистрибутивов Linux поставляются с предварительно скомпилированным OpenSSL.
Как проверить, установлен ли OpenSSL в Linux?
Чтобы проверить, установлен ли OpenSSL в Вашей системе Linux, воспользуйтесь приведенными ниже командами.
Для дистрибутивов GNU/Linux, использующих пакеты rpm:
rpm -qa | grep -i openssl
Для дистрибутивов GNU/Linux, использующих пакеты deb:
dpkg -l | grep -i openssl
Для Arch Linux используйте:
pacman -Q openssl
Как использовать OpenSSL в Windows?
Если Вы работаете в системе Windows, Вы можете скачать OpenSSL отсюда.
При установке по умолчанию на диске C будет создан каталог для программы – C:\OpenSSL-Win32
Чтобы запустить программу, перейдите в каталог C:\OpenSSL-Win32\bin\ и дважды щелкните на файле openssl.exe. Откроется текстовое окно с приглашением OpenSSL>.
Введите необходимые Вам команды OpenSSL в этой подсказке. Файлы, которые Вы создадите, будут находиться в этой же директории. Команды OpenSSL для Windows идентичны тем, что используются на серверах Linux.
Общие команды OpenSSL
Ниже мы собрали несколько распространенных команд OpenSSL для обычных пользователей. Используйте их в любое время, когда Вам нужно генерировать или управлять своими сертификатами.
Проверьте версию OpenSSL
Очень важно знать, какая у Вас версия OpenSSL, поскольку она определяет, какие криптографические алгоритмы и протоколы Вы можете использовать. Вы можете проверить версию OpenSSL, выполнив следующую команду:
Версия openssl -a
Сгенерируйте CSR с помощью OpenSSL
Вы можете использовать OpenSSL для создания кода CSR (Certificate Signing Request). Выполните следующую команду, чтобы сгенерировать CSR:
openssl req -new -key yourdomain.key -out yourdomain.csr
Вы также можете отправить свою информацию в самой командной строке с помощью ключа -subj.
Эта команда отключит подсказки с вопросами:
openssl req -new -key yourdomain.key -out yourdomain.csr -subj "/C=US/ST=CA/L=San Francisco/O=Your Company, Inc./OU=IT/CN=yourdomain.com"
В качестве альтернативы Вы можете создать CSR с помощью инструмента для генерации CSR.
Сгенерируйте закрытый ключ с помощью OpenSSL
Чтобы сгенерировать свой закрытый ключ, Вам нужно указать алгоритм ключа, размер ключа и необязательную кодовую фразу. Стандартный алгоритм ключа – RSA, но Вы также можете выбрать ECDSA для определенных ситуаций. Выбирая алгоритм ключа, убедитесь, что у Вас не возникнет проблем с совместимостью. В этой статье мы покажем только, как генерировать закрытый ключ с помощью алгоритма RSA.
Для размера ключа Вам следует выбрать 2048 бит при использовании алгоритма RSA и 256 бит при использовании алгоритма ECDSA. Любой размер ключа меньше 2048 небезопасен, а большее значение может замедлить работу.
Наконец, Вы должны решить, нужна ли Вам парольная фраза для закрытого ключа или нет. Обратите внимание, что некоторые серверы не принимают закрытые ключи с парольными фразами.
Когда Вы будете готовы сгенерировать свой закрытый ключ (с алгоритмом RSA), выполните приведенные ниже команды:
openssl genrsa -out yourdomain.key 2048
Эта команда создаст файл yourdomain.key в Вашей текущей директории. Ваш закрытый ключ будет в форматеPEM.
Просмотр информации о закрытом ключе с помощью OpenSSL
Вы можете просмотреть закодированное содержимое Вашего закрытого ключа с помощью следующей команды:
cat yourdomain.key
Расшифруйте закрытый ключ с помощью OpenSSL
Чтобы расшифровать Ваш закрытый ключ, выполните приведенную ниже команду:
openssl rsa -text -in yourdomain.key -noout
Извлеките открытый ключ с помощью OpenSSL
Чтобы извлечь Ваш открытый ключ из закрытого, выполните следующую команду:
openssl rsa -in yourdomain.key -pubout -out yourdomain_public.key
Создайте свой закрытый ключ и CSR за один раз с помощью OpenSSL
OpenSSL настолько универсален, что в нем также есть команда для генерации как Вашего закрытого ключа, так и CSR:
openssl req -out yourdomain.csr -new -newkey rsa:2048 -nodes -keyout yourdomain.key
Эта команда генерирует закрытый ключ без ключевой фразы (-keyout yourdomain.key) и код CSR (out yourdomain.csr).
Проверьте информацию CSR с помощью OpenSSL
Чтобы убедиться в том, что Вы указали правильную информацию перед отправкой CSR в Ваш ЦС, выполните приведенную ниже команду:
openssl req -text -in yourdomain.csr -noout -verify
Отправьте CSR в ЦС
Выполните следующую команду, чтобы просмотреть и скопировать все содержимое CSR:
cat yourdomain.csr
Убедитесь, что Вы включили теги –BEGIN CERTIFICATE REQUEST– и –END CERTIFICATE REQUEST-, и вставьте все в форму заказа Вашего поставщика SSL.
Проверка сертификата в OpenSSL
После того, как Ваш ЦС доставит SSL-сертификат в Ваш почтовый ящик, выполните приведенную ниже команду, чтобы убедиться, что информация о сертификате совпадает с Вашим закрытым ключом.
openssl x509 -text -in yourdomain.crt -noout
На этом мы завершаем список общих команд OpenSSL. Если Вы хотите, Вы можете изучить все команды OpenSSL.
Нижняя линия
Теперь, когда Вы знаете, что такое OpenSSL и как он работает, Вы можете использовать его команды для генерации, управления и установки SSL-сертификатов на различные серверы. Использование OpenSSL иногда является единственным вариантом, когда у Вас нет панели хостинга.
Возможно, Вам потребуется некоторое время, чтобы освоиться с командами OpenSSL, но чем больше Вы их используете, тем лучше становится управление SSL-сертификатами.
Если Вы ищете дополнительную информацию о том, что такое OpenSSL и как он работает, эта бесплатная книга – отличный ресурс.
Часто задаваемые вопросы
SSL/TLS – это криптографический протокол, который шифрует связь между двумя компьютерными приложениями по сети.
С другой стороны, OpenSSL – это криптографическая утилита, которая использует командные строки для управления генерацией, установкой и идентификацией сертификатов SSL/TLS.
Копировать ссылку
Да, OpenSSL можно свободно использовать в коммерческих и некоммерческих целях.
Копировать ссылку
Сэкономьте 10% на SSL-сертификатах при заказе сегодня!
Быстрая выдача, надежное шифрование, 99,99% доверия к браузеру, специализированная поддержка и 25-дневная гарантия возврата денег. Код купона: SAVE10