Репликация Hyper-V без домена

Автор: | 11.09.2019

Саму установку роли гипервизора в этой статье рассматривать я не буду, так как делается это довольно просто, а вот репликация без домена не совсем тривиальная задача.
Репликация виртуальных машин в Hyper-V на базе Windows Server 2016 и Windows Server 2019 без контроллера домена доступна только с использованием сертификатов. Вот и рассмотрим, как создать самоподписанный сертификат и подключить его в Hyper-V.
В workgroup наиболее распространенным способом создания сертификатов для узлов Hyper-V было использование утилиты makecert, но эта утилита устарела и вместо нее в Windows Server 2016 появился новый командлет в powershell New-SelfSignedCertificate.
Как вы уже знаете, существует два типа проверки подлинности в Hyper-V: сертификаты Kerberos и HTTPS. Учитывая, что Kerberos доступен только в доменных средах, у нас нет другого выбора, кроме как использовать аутентификацию на основе сертификатов. Необходимые условия для этого типа аутентификации довольно просты: поле субъекта сертификата должно быть установлено в Hyper-V server name (либо первичный сервер, либо сервер-реплика), а расширенное использование ключа должно быть аутентификацией клиента и сервера.
Конечно, трафик https должен быть разрешен на брандмауэрах сервера (я отключил брандмауэры на своих серверах хоста, поэтому я не буду публиковать соответствующие скриншоты).

Репликация виртуальных машин в Hyper-V на базе Windows Server 2016 и Windows Server 2019 без контроллера домена доступна только с использованием сертификатов. Вот и рассмотрим, как создать самоподписанный сертификат и подключить его в Hyper-V.
В workgroup наиболее распространенным способом создания сертификатов для узлов Hyper-V было использование утилиты makecert, но эта утилита устарела и вместо нее в Windows Server 2016 появился новый командлет в powershell New-SelfSignedCertificate.
Как вы уже знаете, существует два типа проверки подлинности в Hyper-V: сертификаты Kerberos и HTTPS. Учитывая, что Kerberos доступен только в доменных средах, у нас нет другого выбора, кроме как использовать аутентификацию на основе сертификатов. Необходимые условия для этого типа аутентификации довольно просты: поле субъекта сертификата должно быть установлено в Hyper-V server name (либо первичный сервер, либо сервер-реплика), а расширенное использование ключа должно быть аутентификацией клиента и сервера.
Конечно, трафик https должен быть разрешен на брандмауэрах сервера (я отключил брандмауэры на своих серверах хоста, поэтому я не буду публиковать соответствующие скриншоты).

Еще одно замечание: виртуальная машина для репликации не должна иметь никаких контрольных точек – для репликации должен быть доступен только один файл vhdx.

  1. Заходим на сервер с виртуальной машиной которую будем реплицировать и указываем основной DNS суффикс
    • Мой компьютер\Свойства\Дополнительные параметры системы\Имя компьютера\Изменить\Дополнительноdns_workgroups
    • После чего перезагружаем сервер
    • То же самое проделываем с сервером репликаций
  2. После изменения DNS суффиксов и перезагрузки сервером можем приступать к созданию сертификатов.
    • New-SelfSignedCertificate -DnsName “srv-hv1.Test.ru”
      -CertStoreLocation “cert:\LocalMachine\My” -TestRoot
    • New-SelfSignedCertificate -DnsName “srv-hv2.Test2.ru”
      -CertStoreLocation “cert:\LocalMachine\My” -TestRoot powershell_create_sertificate
  3. В результате будут созданы три сертификата: один для каждого сервера с ключом расширенного использования, установленным на проверку подлинности клиента и сервера, хоть это явно и не указано, и тестовый корневой сертификат CA — Certreq Test Root – который по умолчанию будет помещен в промежуточные центры сертификации.
  4. Поскольку корневой сертификат CertReq не находится в доверенных корневых центрах сертификации эти сертификаты будут ненадежными.
  5. Поэтому переместим сертификат в группу Доверенные корневые центры сертификации.
  6. Экспортируем сертификат корневой сертификат и для сервера репликаций
  7. Заходим на сервер репликаций
  8. В оснастке mmc импортируем два сертификата на сервер репликаций
  9. Включаем сервер для приема реплик виртуальных машин в свойствах Hyper-V
  10. Далее на сервере с виртуальной машиной уже создаем реплику
    • Для тех, кто не знает, нажимаем правую кнопку мыши на виртуальной машине и выбираем пункт включить репликацию
    • После чего жмем далее, выбираем сертификат и необходимые настройки и все.

b.

Репликация Hyper-V без домена: 4 комментария

  1. Artem

    Отлично, только не сказано что надо отключить проверку отзывов. Иначе сертификат не принимает.

  2. Дмитрий

    Только работать это все не будет, т.к. при первой же проверке выскочит ошибка проверки сертификата на сервере репликаций.
    Нужно добавить в реестр соответствующий ключ:
    reg add “HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\Replication” /v DisableCertRevocationCheck /d 1 /t REG_DWORD /f

  3. Дмитрий

    Здравствуйте, Сергей.
    Благодарю за полезную статью.
    К сожалению, включение репликации на ВМ заканчивается ошибкой:
    «Hyper-V получен недействительный цифровой сертификат с сервера-реплики «хххх.ххххх.ru». Ошибка: Указанный сертификат подписан самовольно. (0x80092007).»
    Вы могли бы прокомментировать данную ошибку и предложить способы устранения?
    Спасибо.

    1. Сергей Автор записи

      Здравствуйте, попробуйте добавить в реестр соответствующий ключ:
      reg add “HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\Replication” /v DisableCertRevocationCheck /d 1 /t REG_DWORD /f

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

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