Создание сертификата с альтернативными DNS

При публикации подписанных приложений или сайтов из локальной сети в глобальную, в некоторых случаях необходимо подписывать их сертификатом, который будет содержать Subject Alternative Name.

И вот как это можно сделать:

Для начала включим такую возможность на сервере (в моем случае это единственный IssuingCA):

certutil -setreg policyEditFlags +EDITF_ATTRIBUTESUBJECTALTNAME2
net stop certsvc
net start certsvc

Что ж, теперь подготовим запрос, в данном примере я привожу исключительно свои настройки тестовой среды (файл я назову request.inf):

[Version]
Signature=»$Windows NT$»

[NewRequest]
Subject = «CN=utm.office.local, OU=IT, O=TEST, L=Kiev, S=Kiev, C=UA»
KeySpec = 1
KeyLength = 2048
HashAlgorithm = SHA256
Exportable = TRUE
MachineKeySet = TRUE
SMIME = FALSE
PrivateKeyArchive = FALSE
UserProtected = FALSE
UseExistingKeySet = FALSE
RequestType = PKCS10
KeyUsage = 0xa0
ProviderName = «Microsoft RSA SChannel Cryptographic Provider»
FriendlyName = «utm.office.local + SAN»

[EnhancedKeyUsageExtension]
OID=1.3.6.1.5.5.7.3.1 ; Server Authentication

[RequestAttributes]
CertificateTemplate = Web Server

[Extensions]
2.5.29.17 = «{text}»
_continue_ = «DNS=*.utm.kiev.ua&»
_continue_ = «DNS=utm.kiev.ua&»
_continue_ = «DNS=utm.office.local&»
_continue_ = «DNS=utm&»
_continue_ = «DNS=localhost»

Теперь на сервере для которого мы подготавливаем сертификат выполняем:

certreq -new request.inf

…сохраняем .req файл, получаем с помощью него сертификат (.cer) от издающего центра, и устанавливаем полученный сертификат:

certreq -accept request.cer

Вот и все 🙂

Pin It

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.