Получение сертификатов для HGS

Область применения: Windows Server 2022, Windows Server 2019, Windows Server 2016

При развертывании HGS вам будет предложено предоставить сертификаты подписи и шифрования, которые используются для защиты конфиденциальной информации, необходимой для запуска экранированной виртуальной машины. Эти сертификаты никогда не покидают HGS и используются только для расшифровки экранированных ключей виртуальных машин, когда узел, на котором они работают, доказал работоспособность. Клиенты (владельцы виртуальных машин) используют общедоступную половину сертификатов для авторизации центра обработки данных для запуска экранированных виртуальных машин. В этом разделе рассматриваются действия, необходимые для получения совместимых сертификатов подписи и шифрования для HGS.

Запрос сертификатов из центра сертификации

Хотя это не обязательно, настоятельно рекомендуется получить сертификаты из доверенного центра сертификации. Это помогает владельцам виртуальных машин убедиться, что они авторизации правильного сервера HGS (например, поставщика услуг или центра обработки данных) для запуска экранированных виртуальных машин. В корпоративном сценарии можно использовать собственный корпоративный ЦС для выдачи этих сертификатов. Вместо этого поставщики услуг и поставщики услуг должны использовать известный общедоступный ЦС.

Сертификаты подписи и шифрования должны быть выданы со следующими свойствами сертификации (если не отмечено "рекомендуется"):

Свойство шаблона сертификата Обязательное значение
Поставщик шифрования Любой поставщик ключей служба хранилища (KSP). Устаревшие поставщики служб шифрования не поддерживаются.
Алгоритм ключа RSA
Минимальный размер ключа 2048 бит
Алгоритм подписи Рекомендуется: SHA256
Использование ключа Цифровая подпись и шифрование данных
Расширенное использование ключей Аутентификация сервера
Политика продления ключа Обновите с тем же ключом. Продление сертификатов HGS с разными ключами позволит предотвратить запуск экранированных виртуальных машин.
имя субъекта; Рекомендуется: имя вашей компании или веб-адрес. Эти сведения будут отображаться владельцам виртуальных машин в мастере экранирования файлов данных.

Эти требования применяются к использованию сертификатов, поддерживаемых оборудованием или программным обеспечением. По соображениям безопасности рекомендуется создать ключи HGS в аппаратном модуле безопасности (HSM), чтобы запретить копирование закрытых ключей из системы. Следуйте инструкциям поставщика HSM, чтобы запросить сертификаты с указанными выше атрибутами и обязательно установить и авторизовать KSP HSM на каждом узле HGS.

Каждому узлу HGS потребуется доступ к одним и тем же сертификатам подписи и шифрования. Если вы используете сертификаты, поддерживаемые программным обеспечением, вы можете экспортировать сертификаты в PFX-файл с паролем и разрешить HGS управлять сертификатами. Вы также можете установить сертификаты в хранилище сертификатов локального компьютера на каждом узле HGS и указать отпечаток HGS. Оба варианта описаны в разделе инициализации кластера HGS.

Создание самозаверяющий сертификатов для тестовых сценариев

Если вы создаете среду лаборатории HGS и не хотите использовать центр сертификации, можно создать самозаверяющие сертификаты. При импорте сведений о сертификате в мастере экранирования файлов данных появится предупреждение, но все функции останутся неизменными.

Чтобы создать самозаверяющий сертификаты и экспортировать их в PFX-файл, выполните следующие команды в PowerShell:

$certificatePassword = Read-Host -AsSecureString -Prompt 'Enter a password for the PFX file'

$signCert = New-SelfSignedCertificate -Subject 'CN=HGS Signing Certificate' -KeyUsage DataEncipherment, DigitalSignature
Export-PfxCertificate -FilePath '.\signCert.pfx' -Password $certificatePassword -Cert $signCert

# Remove the certificate from "Personal" container
Remove-Item $signCert.PSPath
# Remove the certificate from "Intermediate certification authorities" container
Remove-Item -Path "Cert:\LocalMachine\CA\$($signCert.Thumbprint)"

$encCert = New-SelfSignedCertificate -Subject 'CN=HGS Encryption Certificate' -KeyUsage DataEncipherment, DigitalSignature
Export-PfxCertificate -FilePath '.\encCert.pfx' -Password $certificatePassword -Cert $encCert

# Remove the certificate from "Personal" container
Remove-Item $encCert.PSPath
# Remove the certificate from "Intermediate certification authorities" container
Remove-Item -Path "Cert:\LocalMachine\CA\$($encCert.Thumbprint)"

Запрос SSL-сертификата

Все ключи и конфиденциальные сведения, передаваемые между узлами Hyper-V и HGS, шифруются на уровне сообщения, т. е. данные шифруются ключами, известными HGS или Hyper-V, предотвращая то, что кто-то не обнюхивать сетевой трафик и украсть ключи на виртуальных машинах. Однако если у вас есть требования к соответствию требованиям или просто предпочитать шифровать все связи между Hyper-V и HGS, вы можете настроить HGS с помощью SSL-сертификата, который зашифрует все данные на уровне транспорта.

Как узлы Hyper-V, так и узлы HGS должны доверять предоставленному SSL-сертификату, поэтому рекомендуется запросить SSL-сертификат из корпоративного центра сертификации. При запросе сертификата обязательно укажите следующее:

Свойство SSL-сертификата Обязательное значение
имя субъекта; Адрес, который клиенты HGS (т. е. защищенные узлы) будут использовать для доступа к серверу HGS. Обычно это DNS-адрес кластера HGS, известный как распределенное сетевое имя или объект виртуального компьютера (VCO). Это будет объединение имени службы HGS, предоставленного Initialize-HgsServer и доменного имени HGS.
Альтернативное имя субъекта Если вы будете использовать другое DNS-имя для доступа к кластеру HGS (например, если он находится за подсистемой балансировки нагрузки или используете разные адреса для подмножества узлов в сложной топологии), обязательно включите эти DNS-имена в поле SAN запроса сертификата. Обратите внимание, что если расширение SAN заполнено, имя субъекта игнорируется, поэтому SAN должно содержать все значения, включая тот, который обычно помещается в имя субъекта.

Параметры указания этого сертификата при инициализации сервера HGS рассматриваются в разделе "Настройка первого узла HGS". Вы также можете добавить или изменить SSL-сертификат позже с помощью командлета Set-HgsServer .

Следующий шаг