Abilitazione Hyper-V Replica tramite l’autenticazione basata su certificato

Come indicato in Set up Hyper-V Replica | Microsoft Learn è possibile abilitare la replica tramite HTTP o HTTPS tramite le seguenti due modalità:

  • La modalità Use Kerberos (HTTP) che può essere utilizzata se i server Hyper-V sono membri di un dominio Active Directory, ma tale modalità dopo aver stabilito una mutua autenticazione tra i server tramite Kerberos invia i dati sulla rete senza cifratura.
  • La modalità Use certificate-based Authentication (HTTPS) che può essere utilizzata indipendentente che i server Hyper-V siano o meno membri di un dominio Active Directory, ma tale modalità dopo aver stabilito una mutua autenticazione tra i server tramite mediante certificato digitale invia i dati sulla rete cifrati.

Nel caso non si disponga di certificati digitali o di una CA è possibile utilizzare dei certificati autofirmati, a riguardo era stata pubblicata la seguente guida Hyper-V Replica Certificate Based Authentication – makecert | Microsoft Learn che faceva uso di Makecert per la creazione di un certificato Root CA e da questo i certificati per i server. Va però precisato che MakeCert è deprecato e Microsoft indica che per la creazione dei certificati autofirmati deve essere utilizzato il Cmdlet Powershell New-SelfSignedCertificate.

Per la creazione dei certificati per ca configurazione di Hyper-V Replica tramite PowerShell ho predisposto lo script Create-HVReplicaCertificates.ps1, disponibile nel repository GitHub PowerShell/Create-HVReplicaCertificate, che svolge le seguenti operazioni:

  • Crea un certificato autofirmato per la Root CA, questo certificato viene creato nell’archivio certificati personali dell’utente con cui viene eseguito lo script, inoltre il certificato viene esportato in formato pfx nella sottocartella Certs.
  • Crea i certificati per il server Primario e Secondario tra cui configurare la replica Hyper-V, questi certificati vengono creati tramite il certificato Root CA generato e salvati nell’archivio certificati personali dell’utente con cui viene eseguito lo script, inoltre i certificati vengono esportati in formato pfx nella sottocartella Cert.
  • È possibile modificare le impostazioni con cui vengono generati i certificati utilizzando le variabili definite nella sezione iniziale dello script.
  • I certificati vengono rigenerati ogni volta che viene eseguito lo script.

Una volta generati i certificati occorre eseguire le seguenti operazioni prima di attivare la replica di Hyper-V:

  • Installare il certificato Root CA nello store dei certificati “Autorità di certificazione radice attendibili” del server Primario e del server Secondario
  • Installare il certificato per il server Primario nello store dei certificati “Personale” del server Primario
  • Installare il certificato per il server Secondario nello store dei certificati “Personale” del server Secondario
  • Disabilitare sul server Primario e sul server Secondario il controllo di revoca dei certificati, perchè i certificati Self-Signed non supportano i controlli di revoca impostando la chiave di registro HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization\Replication\DisableCertRevocationCheck al valore 1.
  • Abilitare sul server secondario la firewall rule “Hyper-V Replica HTTPS Listener (TCP-In)”

Eseguite tali operazioni preliminari è possibile abilitare la replica di Hyper-V come indicato in Set up Hyper-V Replica | Microsoft Learn.