Продление сертификатов для сетевого контроллера
Область применения: Azure Stack HCI версий 23H2 и 22H2; Windows Server 2022 и Windows Server 2019
В этой статье содержатся инструкции по автоматическому и ручному продлению или изменению сертификатов сетевого контроллера. Если у вас возникли проблемы с продлением сертификатов сетевого контроллера, обратитесь к служба поддержки Майкрософт.
В инфраструктуре программно-конфигурируемой сети (SDN) сетевой контроллер использует проверку подлинности на основе сертификатов для защиты каналов связи в Северном направлении с помощью клиентов управления и южных подключений с сетевыми устройствами, такими как Load Balancer программного обеспечения. Сертификаты сетевого контроллера поставляются с периодом действия, по истечении которого они становятся недействительными и больше не могут быть доверенными для использования. Мы настоятельно рекомендуем продлить их до истечения срока их действия.
Общие сведения о сетевом контроллере см. в статье Что такое сетевой контроллер?
Когда следует обновлять или изменять сертификаты сетевого контроллера
Вы можете продлить или изменить сертификаты сетевого контроллера в следующих случаях:
Срок действия сертификатов приближается. Вы действительно можете продлить сертификаты сетевого контроллера в любой момент до истечения их срока действия.
Примечание
Если вы обновляете существующие сертификаты с тем же ключом, вы все настроены и ничего делать не нужно.
Вы хотите заменить самозаверяющий сертификат сертификатом, подписанным центром сертификации (ЦС).
Примечание
При изменении сертификатов убедитесь, что вы используете то же имя субъекта, что и старый сертификат.
Типы сертификатов сетевого контроллера
В Azure Stack HCI каждая виртуальная машина сетевого контроллера использует два типа сертификатов:
Сертификат REST. Единый сертификат для северного взаимодействия с клиентами REST (например, Windows Admin Center) и южной связи с узлами Hyper-V и программными подсистемами балансировки нагрузки. Этот же сертификат присутствует на всех виртуальных машинах сетевого контроллера. Сведения о продлении сертификатов REST см. в статье Продление сертификатов REST.
Сертификат узла сетевого контроллера. Сертификат на каждой виртуальной машине сетевого контроллера для проверки подлинности между узлами. Сведения о продлении сертификатов узла сетевого контроллера см. в статье Продление сертификатов узлов.
Предупреждение
Не позволяйте сроку действия этих сертификатов истечь. Продлите их до истечения срока действия, чтобы избежать проблем с проверкой подлинности. Кроме того, не удаляйте существующие сертификаты с истекшим сроком действия перед их продлением. Сведения о дате окончания срока действия сертификата см. в статье Просмотр срока действия сертификата.
Просмотр срока действия сертификата
Используйте следующий командлет на каждой виртуальной машине сетевого контроллера, чтобы проверка дату окончания срока действия сертификата:
Get-ChildItem Cert:\LocalMachine\My | where{$_.Subject -eq "CN=<Certificate-subject-name>"} | Select-Object NotAfter, Subject
Чтобы получить срок действия сертификата REST, замените "Certificate-subject-name" на RestIPAddress или RestName сетевого контроллера. Это значение можно получить из командлета
Get-NetworkController
.Чтобы получить срок действия сертификата узла, замените "Certificate-subject-name" полным доменным именем (FQDN) виртуальной машины сетевого контроллера. Это значение можно получить из командлета
Get-NetworkController
.
Продление сертификатов сетевого контроллера
Сертификаты сетевого контроллера можно обновить автоматически или вручную.
Командлет Start-SdnCertificateRotation
позволяет автоматизировать продление сертификатов сетевого контроллера. Автоматическое продление сертификата помогает свести к минимуму все простои или незапланированные простои, вызванные проблемами с истечением срока действия сертификата.
Ниже приведены сценарии, в которых можно использовать командлет для автоматического Start-SdnCertificateRotation
продления сертификатов сетевого контроллера.
-
Самозаверяемые сертификаты.
Start-SdnCertificateRotation
Используйте командлет для создания самозаверяющих сертификатов и обновления этих сертификатов на всех узлах сетевого контроллера. -
Использование собственных сертификатов. Принесите собственные сертификаты, самозаверяющий или подписанный ЦС, и используйте
Start-SdnCertificateRotation
командлет для продления сертификата. Командлет устанавливает сертификаты на всех узлах сетевого контроллера и распространяет их на другие компоненты инфраструктуры SDN. -
Предустановленные сертификаты. Необходимые сертификаты уже установлены на узлах сетевого контроллера. Используйте командлет ,
Start-SdnCertificateRotation
чтобы обновить эти сертификаты для других компонентов инфраструктуры SDN.
Дополнительные сведения о создании сертификатов SDN и управлении ими см. в статье Управление сертификатами для программно-конфигурируемой сети.
Требования
Ниже приведены требования к автоматическому продлению сертификата.
Командлет необходимо выполнить
Start-SdnCertificateRotation
на одном из узлов сетевого контроллера. Инструкции по установке см. в разделе Установка модуля SdnDiagnostics.Для авторизации обмена данными между узлами сетевого контроллера необходимо иметь учетные данные для следующих двух типов учетных записей:
Credential
, чтобы указать учетную запись пользователя с правами локального администратора на сетевом контроллере.NcRestCredential
, чтобы указать учетную запись пользователя с доступом к REST API сетевого контроллера. Это член изClientSecurityGroup
Get-NetworkController
. Эта учетная запись используется для вызова REST API для обновления ресурса учетных данных с помощью нового сертификата.
Дополнительные сведения о настройке авторизации для подключения сетевого контроллера по северному трафику см. в разделе Авторизация для связи по северному подключению.
Автоматическое продление самозаверяющего сертификата
С помощью командлета Start-SdnCertificateRotation
можно создавать самозаверяющие сертификаты и автоматически обновлять их на всех узлах сетевого контроллера. По умолчанию командлет создает сертификаты со сроком действия в три года, но вы можете указать другой срок действия.
Выполните следующие действия на одном из узлов сетевого контроллера, чтобы создать самозаверяющие сертификаты и автоматически продлить их.
Чтобы создать самозаверяющие сертификаты, выполните
Start-SdnCertificateRotation
командлет . Параметр можно использовать-Force
с командлетом , чтобы избежать запросов на подтверждение или ввода вручную во время процесса смены.Чтобы создать самозаверяющие сертификаты со сроком действия по умолчанию в три года, выполните следующие команды:
Import-Module -Name SdnDiagnostics -Force Start-SdnCertificateRotation -GenerateCertificate -CertPassword (Get-Credential).Password -Credential (Get-Credential)
Чтобы создать самозаверяющие сертификаты с определенным сроком действия, используйте
NotAfter
параметр для указания срока действия.Например, чтобы создать самозаверяющие сертификаты со сроком действия в пять лет, выполните следующие команды:
Import-Module -Name SdnDiagnostics -Force Start-SdnCertificateRotation -GenerateCertificate -CertPassword (Get-Credential).Password -NotAfter (Get-Date).AddYears(5) -Credential (Get-Credential)
Введите учетные данные. Вы получите два запроса на ввод двух типов учетных данных:
- В первом запросе введите пароль для защиты созданного сертификата. Имя пользователя может быть любым и не используется.
- Во втором запросе используйте учетные данные с правами администратора ко всем узлам сетевого контроллера.
После создания новых сертификатов вы получите предупреждение, чтобы подтвердить, хотите ли вы продолжить процесс смены сертификатов. В тексте предупреждения отображается список сертификатов сетевого контроллера, которые будут заменены только что созданными сертификатами. Для подтверждения введите
Y
.Ниже приведен пример снимка экрана с предупреждением:
После подтверждения продолжения смены сертификатов можно просмотреть состояние текущих операций в командном окне PowerShell.
Важно!
Не закрывайте окно PowerShell, пока не завершится командлет. В зависимости от среды, например количества узлов сетевого контроллера в кластере, может потребоваться несколько минут или более часа.
Ниже приведен пример снимка экрана командного окна PowerShell с состоянием текущих операций:
Автоматическое продление собственных сертификатов
Помимо создания самозаверяющих сертификатов сетевого контроллера, вы также можете использовать собственные сертификаты, самозаверяющие или ЦС, и использовать Start-SdnCertificateRotation
командлет для обновления этих сертификатов.
Выполните следующие действия на одном из узлов сетевого контроллера, чтобы автоматически обновить собственные сертификаты:
Подготовьте сертификаты в
.pfx
формате и сохраните их в папке на одном из узлов сетевого контроллера, из которого выполняетсяStart-SdnCertificateRotation
командлет. Параметр можно использовать-Force
с командлетом , чтобы избежать запросов на подтверждение или ввода вручную во время процесса смены.Чтобы начать обновление сертификата, выполните следующие команды:
Import-Module -Name SdnDiagnostics -Force Start-SdnCertificateRotation -CertPath "<Path where you put your certificates>" -CertPassword (Get-Credential).Password -Credential (Get-Credential)
Введите учетные данные. Вы получите два запроса на ввод двух типов учетных данных:
- В первом запросе введите пароль сертификата. Имя пользователя может быть любым и не используется.
- Во втором запросе используйте учетные данные с правами администратора ко всем узлам сетевого контроллера.
Вы получите предупреждение, чтобы подтвердить, хотите ли вы продолжить процесс смены сертификатов. В тексте предупреждения отображается список сертификатов сетевого контроллера, которые будут заменены только что созданными сертификатами. Для подтверждения введите
Y
.Ниже приведен пример снимка экрана с предупреждением:
После подтверждения продолжения смены сертификатов можно просмотреть состояние текущих операций в командном окне PowerShell.
Важно!
Не закрывайте окно PowerShell, пока не завершится командлет. В зависимости от среды, например количества узлов сетевого контроллера в кластере, может потребоваться несколько минут или более часа.
Автоматическое продление предустановленных сертификатов
В этом сценарии на узлах сетевого контроллера установлены необходимые сертификаты.
Start-SdnCertificateRotation
Используйте командлет , чтобы обновить эти сертификаты в других компонентах инфраструктуры SDN.
Выполните следующие действия на одном из узлов сетевого контроллера, чтобы автоматически обновить предустановленные сертификаты.
Установите сертификаты сетевого контроллера на всех узлах сетевого контроллера согласно предпочтительному методу. Убедитесь, что сертификаты являются доверенными для других компонентов инфраструктуры SDN, включая серверы SDN MUX и узлы SDN.
Create конфигурации смены сертификатов:
Чтобы создать конфигурацию смены сертификатов по умолчанию, выполните следующие команды:
Import-Module -Name SdnDiagnostics -Force $certConfig = New-SdnCertificateRotationConfig $certConfig
Проверьте конфигурацию смены сертификатов по умолчанию, чтобы проверить, являются ли автоматически обнаруженные сертификаты теми, которые вы хотите использовать. По умолчанию он получает последний выданный сертификат для использования.
Ниже приведен пример конфигурации смены сертификатов.
PS C:\Users\LabAdmin> $certConfig Name Value ---- ----- ws22ncl.corp.contoso.com F4AAF14991DAF282D9056E147AE60C2C5FE80A49 ws22nc3.corp.contoso.com BC3E6B090E2AA80220B7BAED7F8F981A1E1DD115 ClusterCredentialType X509 ws22nc2.corp.contoso.corn 75DC229A8E61AD855CC445C42482F9F919CC1077 NcRestCert 029D7CA0067A60FB24827D8434566787114AC30C
где:
- ws22ncx.corp.contoso.com отображает отпечаток сертификата для каждого узла сетевого контроллера.
- ClusterCredentialType показывает тип проверки подлинности кластера сетевого контроллера. Если тип проверки подлинности не X509, сертификат узла не используется и не отображается в выходных данных.
- В NcRestCert отображается отпечаток сертификата rest сетевого контроллера.
(Необязательно) Если созданный
$certConfig
файл неверен, его можно изменить, указав отпечаток нового сертификата. Например, чтобы изменить отпечаток сертификата rest сетевого контроллера, выполните следующую команду:$certConfig.NcRestCert = <new certificate thumbprint>
Запустите смену сертификатов. Параметр можно использовать
-Force
с командлетом , чтобы избежать запросов на подтверждение или ввода вручную во время процесса смены.Import-Module -Name SdnDiagnostics -Force Start-SdnCertificateRotation -CertRotateConfig $certConfig -Credential (Get-Credential)
При появлении запроса на ввод учетных данных введите учетные данные, имеющие доступ администратора ко всем узлам сетевого контроллера.
Вы получите предупреждение, чтобы подтвердить, хотите ли вы продолжить автоматическую смену сертификатов. Предупреждение отображает список сертификатов сетевого контроллера, которые будут заменены вашими собственными сертификатами. Для подтверждения введите
Y
.Ниже приведен пример снимка экрана с предупреждением, которое предлагает подтвердить смену сертификатов:
После подтверждения продолжения смены сертификатов можно просмотреть состояние текущих операций в командном окне PowerShell.
Важно!
Не закрывайте окно PowerShell, пока не завершится командлет. В зависимости от среды, например количества узлов сетевого контроллера в кластере, может потребоваться несколько минут или более часа.
Повторный импорт сертификатов в Windows Admin Center
Если вы обновили сертификат REST сетевого контроллера и используете Windows Admin Center для управления SDN, необходимо удалить кластер Azure Stack HCI из Windows Admin Center и добавить его снова. Это гарантирует, что Windows Admin Center импортирует обновленный сертификат и использует его для управления SDN.
Выполните следующие действия, чтобы повторно импортировать обновленный сертификат в Windows Admin Center.
- В Windows Admin Center выберите Диспетчер кластеров в верхнем раскрывающемся меню.
- Выберите кластер, который нужно удалить, и нажмите кнопку Удалить.
- Нажмите кнопку Добавить, введите имя кластера, а затем нажмите кнопку Добавить.
- После загрузки кластера выберите Инфраструктура SDN. Это заставляет Windows Admin Center автоматически повторно импортировать обновленный сертификат.