Покажите посетителям вашего сайта, что вы серьезно относитесь к их безопасности, создав собственный SSL-сертификат с использованием OpenSSL.

Сертификаты SSL/TLS необходимы для защиты вашего веб-приложения или сервера. Хотя несколько надежных центров сертификации предоставляют платные сертификаты SSL/TLS, с помощью OpenSSL также можно создать самозаверяющий сертификат. Несмотря на то, что самозаверяющие сертификаты не имеют одобрения доверенного центра, они все же могут шифровать ваш веб-трафик. Итак, как вы можете использовать OpenSSL для создания самозаверяющего сертификата для вашего веб-сайта или сервера?

Как установить OpenSSL

OpenSSL — это программное обеспечение с открытым исходным кодом. Но если у вас нет опыта программирования и вы беспокоитесь о процессах сборки, у него есть небольшая техническая настройка. Чтобы избежать этого, вы можете загрузить последнюю версию кода OpenSSL, полностью скомпилированную и готовую к установке, с сайт slproweb.

Здесь выберите расширение MSI последней версии OpenSSL, подходящее для вашей системы.

instagram viewer

В качестве примера рассмотрим OpenSSL на D:\OpenSSL-Win64. Вы можете изменить это. Если установка завершена, открыть PowerShell от имени администратора и перейдите в подпапку с именем мусорное ведро в папке, где вы установили OpenSSL. Для этого используйте следующую команду:

CD'D:\OpenSSL-Win64\bin'

Теперь у вас есть доступ к openssl.exe и можете управлять им как хотите.

Создайте свой закрытый ключ с помощью OpenSSL

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

openssl.Exeгенрса-des3-внемой приватный ключ.ключ 2048

Эта команда сгенерирует 2048-битный закрытый ключ RSA с шифрованием 3DES через OpenSSL. OpenSSL попросит вас ввести пароль. Вы должны использовать надежный и запоминающийся пароль. После двукратного ввода одного и того же пароля вы успешно сгенерируете закрытый ключ RSA.

Вы можете найти свой закрытый ключ RSA с именем myPrivateKey.key.

Как создать файл CSR с помощью OpenSSL

Созданного вами приватного ключа будет недостаточно. Кроме того, вам нужен файл CSR для создания самозаверяющего сертификата. Чтобы создать этот файл CSR, вам нужно ввести новую команду в PowerShell:

openssl.Exeзапрос-новый-ключмой приватный ключ.ключ-внеmyCertRequest.csr

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

Кроме того, все операции можно выполнять с помощью одной командной строки. Если вы используете приведенную ниже команду, вы можете одновременно сгенерировать как свой закрытый ключ RSA, так и файл CSR:

openssl.Exeзапрос-новый-новый ключрса:2048-узлы-выключениемойПриватКей2.ключ-внемойCertRequest2.csr

Теперь вы сможете увидеть файл с именем myCertRequest.csr в соответствующем каталоге. Этот файл CSR, который вы создаете, содержит некоторую информацию о:

  • Учреждение, запрашивающее сертификат.
  • Общее имя (т. е. доменное имя).
  • Открытый ключ (для целей шифрования).

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

Эти органы и брокерские конторы проверяют правильность предоставленной вами информации в зависимости от характера сертификата, который вы хотите получить. Вам также может потребоваться отправить некоторые документы в автономном режиме (факс, почта и т. д.), чтобы подтвердить правильность информации.

Подготовка сертификата удостоверяющим центром

Когда вы отправляете созданный файл CSR в действующий центр сертификации, центр сертификации подписывает файл и отправляет сертификат запрашивающему учреждению или лицу. При этом центр сертификации (также известный как ЦС) также создает файл PEM из файлов CSR и RSA. Файл PEM — это последний файл, необходимый для самозаверяющего сертификата. Эти этапы обеспечивают SSL-сертификаты остаются организованными, надежными и безопасными.

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

А пока представьте файл PEM с именем myPemKey.pem исходит от официального центра сертификации. Вы можете использовать следующую команду, чтобы создать файл PEM для себя:

opensslх509-req-ша256-дней 365 myCertRequest.csr-знакмой приватный ключ.ключ-внемойPemKey.pem

Если бы у вас был такой файл, команда, которую вы должны использовать для своего самозаверяющего сертификата, была бы:

openssl.Exeх509-req-дней 365 myCertRequest.csr-знакмойPemKey.pem-внемой самоподписанный сертификат.cer

Эта команда означает, что файл CSR подписан закрытым ключом с именем myPemKey.pem, действует 365 дней. В результате вы создаете файл сертификата с именем mySelfSignedCert.cer.

Информация о самоподписанном сертификате

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

openssl.Exeх509-ноут-текстмой самоподписанный сертификат.cer

Это покажет вам всю информацию, содержащуюся в сертификате. Можно увидеть много информации, такой как компания или личная информация, а также алгоритмы, используемые в сертификате.

Что делать, если самоподписанные сертификаты не подписаны центром сертификации?

Очень важно проверять создаваемые вами самозаверяющие сертификаты и подтверждать их безопасность. Обычно это делает сторонний поставщик сертификатов (т. е. ЦС). Если у вас нет сертификата, подписанного и утвержденного сторонним центром сертификации, и вы используете этот неутвержденный сертификат, вы столкнетесь с некоторыми проблемами безопасности.

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

Для обеспечения безопасности пользователей, веб-сайтов и других служб обычно необходимо использовать сертификаты, которые действительно сертифицированы центром сертификации. Это гарантирует, что данные пользователя зашифрованы и подключаются к правильному серверу.

Создание самоподписанных сертификатов в Windows

Как видите, создать самозаверяющий сертификат в Windows с помощью OpenSSL довольно просто. Но имейте в виду, что вам также потребуется одобрение от органов сертификации.

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