Генератор самоподписанных сертификатов и CSR
Создайте самоподписанный сертификат TLS X.509, сертификат CA или CSR с SAN, ключами RSA 2048–4096 и своим сроком действия. Вывод в PEM; ключ остаётся у вас.
Обычно имя хоста, например localhost или www.example.com.
Дополнительные DNS-имена и IP-адреса через запятую или с новой строки. Браузеры проверяют именно их, а не CN.
Ключ RSA создаётся через Web Crypto в вашем браузере и никогда не покидает устройство.
Что такое Генератор SSL-сертификатов?
Создавайте файлы для TLS без командной строки OpenSSL: самоподписанный TLS-сертификат для локальной разработки или внутренних сервисов, самоподписанный сертификат CA для подписи собственных сертификатов или запрос на подпись сертификата (CSR), который отправляется в удостоверяющий центр. Вы получаете сертификат или CSR и закрытый ключ RSA в формате PEM, а также отпечаток SHA-256.
Как пользоваться Генератор SSL-сертификатов
- Выберите Что создать.
- Введите Общее имя (CN) и Альтернативные имена (SAN) (DNS-имена и IP-адреса), а также необязательные поля организации и местоположения.
- Выберите Длина ключа и для сертификатов — Срок действия (дней).
- Нажмите Сгенерировать и скачайте сертификат (
.crt) или CSR (.csr) и закрытый ключ (.key).
Пример
Self-signed TLS certificate, CN localhost, SANs 127.0.0.1 and ::1, RSA 2048, 365 days
-----BEGIN CERTIFICATE----- … -----END CERTIFICATE----- Subject: CN=localhost SAN: DNS:localhost, IP:127.0.0.1, IP:::1
Когда использовать Генератор SSL-сертификатов
Используйте самоподписанные сертификаты для localhost, контейнеров разработки, сервисов интранета, прототипов IoT и проверки конфигурации TLS. Браузеры показывают предупреждение, пока вы не доверите сертификат (или вашему CA). Для публичных сайтов используйте CA вроде Let's Encrypt: создайте CSR здесь или поручите это серверу или ACME-клиенту.
Как работает Генератор SSL-сертификатов
Пара ключей RSA создаётся через Web Crypto API браузера (RSASSA-PKCS1-v1_5, открытая экспонента 65537) и импортируется в node-forge. Для сертификатов forge строит сертификат X.509 v3 со случайным положительным 128-битным серийным номером, сроком действия, начинающимся минуту назад, на выбранное число дней, совпадающими субъектом и издателем (самоподписанный) и расширениями: basicConstraints (CA true/false, критическое), keyUsage (digitalSignature + keyEncipherment для серверов, keyCertSign + cRLSign для CA), extendedKeyUsage serverAuth/clientAuth, subjectKeyIdentifier и subjectAltName. CN автоматически добавляется в SAN, если это имя хоста или IP. Подпись — SHA-256. CSR — запросы PKCS#10 с SAN в атрибуте extensionRequest. Ключи экспортируются в PKCS#8 PEM.
Распространенные Случаи Использования
- Включение HTTPS на localhost или сервере разработки
- Создание частного CA для внутренней сети или лаборатории
- Генерация CSR для коммерческого сертификата
- Проверка настроек TLS в Nginx, Apache или балансировщике
Примечание по Безопасности
Любой, у кого есть закрытый ключ, может выдавать себя за ваш сервер. Храните файл .key в тайне, не коммитьте его в Git и не используйте ключи разработки в продакшене.
Часто Задаваемые Вопросы
Почему браузер пишет, что сертификату нельзя доверять?
Самоподписанный сертификат выдан не тем CA, которому доверяет ваша система. Импортируйте его (или подписавший его CA) в хранилище доверия операционной системы или браузера, чтобы убрать предупреждение на своих машинах.
Зачем нужны альтернативные имена субъекта (SAN)?
Современные браузеры игнорируют Common Name и сопоставляют имя хоста только со списком SAN, поэтому все используемые имена хостов и IP должны быть в нём перечислены.
Безопасен ли закрытый ключ?
Он создаётся в вашем браузере и никуда не отправляется. Скачайте его, храните с ограниченными правами доступа и никому не передавайте.
Какую длину ключа выбрать?
RSA 2048 — обычный минимум с широкой совместимостью; 3072 или 4096 дают больший запас ценой более медленных рукопожатий.