В моей компании много серверов, на которых пользователи удаленно заходят на них для выполнения своих обязанностей. Мы включили для них автоматическую регистрацию сертификатов компьютеров, чтобы обеспечить безопасное соединение. Но поскольку у нас есть серверы с несколькими записями DNS, вполне вероятно, что пользователи не используют основное DNS-имя сервера или его IP-адрес, поэтому они получают ошибку сертификата при попытке подключения. Поэтому нам нужен способ автоматически включать все записи DNS и IP-адрес сервера в альтернативное имя субъекта сертификата.
Поскольку ни CA, ни сервер не знают DNS-имена, которые ваши клиенты используют для доступа к серверу, вы не можете сделать это автоматически. Вам необходимо указать DNS-имена, которые вы хотите использовать. Для этого вам необходимо создать собственный запрос для серверов.
Создайте файл с именем requestSAN.inf со следующим содержимым
[Version]
Signature="$Windows NT$
[NewRequest]
Subject = "C=DE,O=YOUR-COMPANY-NAME,CN=SERVER.COMPANY.COM";
EncipherOnly = FALSE
Exportable = TRUE
KeyLength = 2048
KeySpec = 1
KeyUsage = 0xA0 ; Digital Signature, Key Encipherment
MachineKeySet = True
ProviderName = "Microsoft RSA SChannel Cryptographic Provider"
ProviderType = 12
RequestType = CMC
[RequestAttributes]
;I assume you don`t use a customer Template, otherwise use the proper template
CertificateTemplate = WebServer
SAN="dns=SERVER.COMPANY.COM&dns=SERVER2.COMPANY.COM&dns=SERVER3.COMPANY.COM"
На сервере выполните команду ниже, чтобы сгенерировать запрос на подпись сертификата:
certreq -new requestSAN.inf certnew.req
отправьте certnew.req в свой центр сертификации и получите соответствующий сертификат