Собственный SSL сертификат

[2024-04-25] Белый список, Прокси-сервер

Что такое SSL сертификат

Если коротко, то SSL-сертификат - это небольшой файл, содержащий цифровую подпись издателя и открытый ключ. Имеет срок действия.
Без SSL-сертификата невозможна работа с интернет-ресурсами по SSL протоколу, обеспечивающему шифрование (в т.ч. HTTPS) и защиту интернет-соединений.
Используемые на web-сайтах SSL сертификаты выпускаются надёжными доверенными центрами сертификации.
Подробно можно почитать здесь: https://ru.wikipedia.org/wiki/SSL.

Зачем нужен свой SSL сертификат

Самоизданные SSL сертификаты, как правило, используют для целей тестирования или внутри локальной сети предприятия.

Как сгенерировать самоподписанный SSL сертификат

Для генерации SSL сертификата нужна программа OpenSSL.
Если она у Вас не установлена - смотрите статью как установить OpenSSL (там в конце статьи есть ссылка на моё готовое рабочее решение, основанное на установке OpenSSL из официального дистрибутива).

Итак, запускаем командную строку.
Командой cd меняем путь по-умолчанию на путь к OpenSSL.
Это либо директория наподобие C:\Program Files\OpenSSL-Win64\bin, либо директория, в которую Вы распаковали моё рабочее решение по OpenSSL из статьи как установить OpenSSL, либо ещё какая-то директория, в которой у Вас может уже была установлена программа OpenSSL.

Далее все примеры показаны в предположении, что OpenSSL стоит по пути C:\Program Files\OpenSSL-Win64\bin:
делаем cd "C:\Program Files\OpenSSL-Win64\bin", нажимаем Enter (подразумевается, что ввод любой команды завершается нажатием Enter).

меняем путь по-умолчанию на путь к OpenSSL - командная строка - консоль - Windows 10


Создаём какую-нибудь директорию, в которую будет сгенерирован сертификат:
например, mkdir C:\TEMP\sert.

mkdir C:\TEMP\sert создание директории для сгенерированного сертификата


Набираем и выполняем команду для генерации сертификата:
openssl req -new -x509 -extensions v3_ca -keyout C:\TEMP\sert\cakey.pem -out C:\TEMP\sert\cacert.crt -days 36500
Ключ "days" задаёт срок действия сертификата в днях.

openssl req -new -x509 -extensions v3_ca -keyout cakey.pem -out cacert.crt -days 365


Вам будет предложено ввести пароль для самоподписанного корневого сертификата (Enter PEM pass phrase).
Придумайте и введите пароль (латинскими / английскими буквами!) и обязательно запомните его (или куда-нибудь запишите).
Допустимая длина пароля - от 4 до 511 символов.

OpenSSL Enter PEM pass phrase - ROOT self signed sertificate password - OpenSSL пароль от корневого сертификата


Далее Вам будет предложено заполнить ряд необязательных полей. Можете заполнять, а можете оставить пустыми - на работу сертификата, по идее, это не повлияет.
В примере ниже введено следующее:
Country Name: RU
State or Province: Moscow Region
Locality Name: Balashikha
Organization Name: AntiShit
Organization Unit Name: Clean Internet
Common Name: White Knight
Email Address:

OpenSSL Enter PEM pass phrase - ROOT self signed sertificate password - OpenSSL пароль от корневого сертификата


Командой dir C:\TEMP\sert (или в какую там Вы директорию генерировали сертификат) убеждаемся, что создалось два файла: cakey.pem и cacert.crt.
Таким образом, задача по созданию самоподписанного SSL сертификата решена. :-)

файлы SSL сертификата cakey.pem и cacert.crt

Готовый самоподписанный SSL сертификат

Если Вам лень заморачиваться со всеми этими OpenSSL и командными строками - можете СКАЧАТЬ готовый самоподписанный SSL сертификат сроком действия 1000 лет (пароль от сертификата: swordfish20231223 ).


© 1999 - 2024 www.Balpom.ru