Выпуск сертификатов
Создание запроса (openssl) и выпуск сертификата из запроса
Создать запрос на сертификат по шаблону User используя openssl
1. Cоздайте файл конфигурации openssl.cnf
[ req ] default_bits = 2048 distinguished_name = req_distinguished_name req_extensions = v3_req prompt = no utf8 = yes [ req_distinguished_name ] CN = Test User O = MyOrganization OU = MyOrganization Unit emailAddress = testuser@example.com [ v3_req ] # Key Usage keyUsage = critical, digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment, keyAgreement # Extended Key Usage extendedKeyUsage = clientAuth # Certificate Template Name (OID 1.3.6.1.4.1.311.20.2) # Our case - User 1.3.6.1.4.1.311.20.2 = ASN1:UTF8String:User
2. Создайте ключ RSA и запрос на сертификат (CSR)
#!/usr/bin/env bash set -euo pipefail KEY="testuser.key.pem" CSR="testuser.p10.pem" CONF="openssl.cnf" # Генерация ключа (без пароля) openssl genpkey -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out "$KEY" # Генерация CSR с расширениями openssl req -new -key "$KEY" -out "$CSR" -config "$CONF" -extensions v3_req # Проверка openssl req -in "$CSR" -noout -text
Примечание:
req_extensions = v3_req— указывает, что блок[ v3_req ]нужно вставить в CSR.keyUsageиextendedKeyUsageможно задавать через известные ключевые слова (digitalSignature,keyEncipherment,clientAuth,serverAuth,emailProtectionи т. д.).Любые нестандартные поля (OID) задаются в виде
OID = ASN1:тип:значение. Для имени шаблона MS используйтеASN1:UTF8String:ИмяШаблона.
Итоговый CSR будет содержать:
Key Usage: Digital Signature, Non Repudiation (ContentCommitment), Key Encipherment, Data Encipherment, Key Agreement
Extended Key Usage: clientAuth
OID 1.3.6.1.4.1.311.20.2:
"User"
Выпустить сертификат на CA
Раздел Сертификаты - Создать ( + ) - загрузите запрос на сертификат CSR, файл testuser.p10.pem
Проверка должна пройти успешно, шаблон определен User
Выпустите сертификат и скачайте его в формате .pem / .cer
Итого, получено 3 файла:
- файл с закрытым ключем
- запрос на сертификат
- выпущенный сертификат (скачан из интерфейса CA)
Создание и выпуск сертификата из интерфейса CA
Создать запрос на сертификат из раздела Запросы ( + ) и заполнить форму и выпустите сертификат
Запомните указанный пароль, на нем будет зашифрован закрытый ключ! Без пароля доступ к закрытому ключу будет утерян!
Скачайте контейнер .pfx с выпущенным сертификатом
Введите пароль, указанный ранее при создании запроса
Полученный контейнер .pfx содержит выпущенный сертификат, закрытый ключ и сертификат CA



