Migrare Active Directory da Windows Server 2008 / 2008 R2 a Windows Server 2019
Nel gennaio 2020 i prodotti Windows Server 2008 e Windows Server 2008 R2 hanno raggiunto il limite del supporto esteso da parte di Microsoft. È quindi tempo di migrazione in quanto queste versioni di sistema operativo non sono più aggiornati ed aggiornabili.
Numerose normative, non ultimo il Regolamento Europeo sulla Protezione dei Dati Personali (GDPR), seppur non scendendo in dettagli tecnici, impongono al Titolare del Trattamento l’adozione di idonee misure di sicurezza. Ed il costante aggiornamento dei sistemi operativi è un tassello importante della protezione dei dati personali.
Active Directory (AD) è di fatto il sistema di autenticazione maggiormente utilizzato ed al quale viene affidata la protezione degli account di accesso di numerose infrastrutture. Parallelamente all’uscita dal supporto di WindowsServer 2008(r2) anche Active Directory segue lo stesso percorso.
In questo articolo vogliamo proporre il percorso che analizza la migrazione di un dominio AD installato su WindowsServer 2008 verso la versione più recente 2019.
Una breve considerazione è da fare relativamente ai livelli funzionali di domini e foreste, in questa guida si presuppone che il dominio di partenza sia al livello funzionale 2008 e che al termine il dominio migrato sia portato al livello funzionale 2016. Può sembrare strano che la versione di Windows Server 2019 renda disponibile il livello funzionale della versione precedente, ma è così; da questo punto di vista AD disponibile in WindowsServer 2019 non ha portato cambiamenti rispetto alla versione 2016.
Prima di procedere con la migrazione vera e propria sarebbe (è) meglio effettuare un test in un ambiente isolato dove verificare che le varie integrazioni come ad esempio le autenticazioni tramite LDAP piuttosto che applicazioni che si integrano con lo schema di AD, continuino a funzionare anche dopo la migrazione.
Schema dell’ambiente di test utilizzato per questa guida
Figura 1 Schema dell’ambiente di test
Check List per la migrazione di Active Directory
- Verifica ed auditing degli eventi di AD al fine di rilevare preventivamente eventuali malfunzionamenti
- Pianificazione del percorso di migrazione documentando i vari passi
- Individuazione delle risorse fisiche/virtuali per i nuovi DC
- Installare il sistema operativo WindowsServer 2019 ed eseguirne l’aggiornamento con l’installazione delle ultime patch disponibili
- Verificare che il software antivirus abbia le esclusioni corrette per operare con Active Directory
- Installare il ruolo Active Directory Domain Services
- Spostamento dei ruoli FSMO dal Domain Controller versione 208 al Domain Controller 2019
- Rimozione del ruolo di Domain Controller 2008 dal dominio
-
Attivazione del livello funzionale della Foresta / Dominio alla versione 2016 (su server 2019)
- A questo proposito è utile ricordare che è possibile effettuare l’innalzamento del livello funzionale della Directory così come è possibile effettuarne la regressione fino al livello 2008 R2.
- Verifica ed auditing degli eventi post-migrazione
Migrazione del Dominio Active Directory
Di seguito sono riportati i passi relativi alla completa migrazione del dominio, operazione che nel suo complesso è articolata in due passaggi, il primo consiste nell’introduzione all’interno del dominio di un nuovo server di versione 2019, ed il secondo nella rimozione del server 2008. Ognuno di questi due macro-passaggi è ulteriormente suddiviso in passi che sono dettagliati più avanti.
- Installazione del sistema operativo ed impostazione di un indirizzo IP statico (non proposto in questa guida)
- Esecuzione della console PowerShell (o ISE) con privilegi elevati
- Join del nuovo server al dominio esistente e login con credenziali di amministratore
- Installazione del servizio DNS
- Installazione del ruolo Active Directory Domain Services
- Promozione del nuovo server a Domain Controller
- Verifica dell’installazione dei servizi AD
- Verifica della presenza dei ruoli FSMO
- Spostamento dei ruoli FSMO sul nuovo server
- Verifica tramite Registro Eventi dello spostamento dei ruoli
- Verifica della funzione di Global Catalog sul nuovo server
Join del nuovo server al dominio esistente (3)
In questo passaggio il nuovo server viene fatto partecipare come membro al dominio ICTPOWER.LOCAL
1 |
Add-Computer -DomainName “ICTPOWER.LOCAL” -Restart |
Figura 2 Join al dominio tramite Powershell
Figura 3 richiesta delle credenziali
Installazione del servizio DNS (4)
Il servizio DNS è uno dei punti cardine su cui si appoggia AD ed è necessario che sia presente anche sul nuovo server, in quanto la rimozione fisica di DC01 eliminerà anche il servizio DNS
1 |
Install-WindowsFeature -Name DNS -IncludeManagementTools |
Figura 4 installazione del servizio DNS
Installazione del ruolo AD Domain Services (5)
1 |
Install-WindowsFeature -Name AD-Domain-Services -IncludeManagementTools |
Figura 5 aggiunta del ruolo relativo ai servizi AD
Promozione del nuovo server a Domain Controller (6)
Il comando riportato qui di seguito configura il ruolo Active Directory sul server DC02, per la sua esecuzione è necessario fornire una serie di informazioni quali la password dell’utente della modalità di restore, il server da cui replicare il database AD, ed i percorsi locali n cui l’infrastruttura verrà installata
1 2 3 4 5 |
Install-ADDSDomainController -DomainName ictpower.local -SafeModeAdministratorPassword (Convert-SecureString -AsPlainText “SafeM0deAdminPwd!” -Force) -ReplicationSourceDC “dc01.ictpower.local” -DatabasePath “C:\Windows\NTDS” -LogPath “C:\Windows\SYSVOL” -Force:$True |
Figura 6 definizione del server come Domain Controller e warning relativi
Figura 7 conferma del comando precedente
Verifica dell’installazione dei servizi AD (7)
Tramite questo comando è possibile verificare che i servizi relativi ad AD siano presenti ed attivi
1 |
Get-Service adws,kdc,netlogon,dns |
Figura 8 Verifica dei servizi attivi di AD
Verifica della presenza dei ruoli FSMO di dominio e di foresta (8)
1 |
Get-ADDomain | Format-Table PDCEmulator,RIDMaster,InfrastructureMaster |
Figura 9 verifica della presenza dei ruoli FSMO di DOMINIO
1 |
Get-Forest | Format-Table SchemaMaster, DomainNamingMaster |
Figura 10 verifica della presenza dei ruoli FSMO di FORESTA
Spostamento dei ruoli FSMO sul nuovo server (9)
1 |
Move-ADDirectoryServerOperationMasterRole -Identity DC02 -OperationMasterRole SchemaMaster, DomainNaminMaster, PDCEmulator, RIDMaster, InfrastructureMaster -Confirm: $False |
Figura 11 spostamento dei ruoli FSMO sul nuovo server
Verifica tramite Registro Eventi dello spostamento dei ruoli FSMO (10)
Figura 12 registro eventi ID 1458
La verifica può avvenire tramite il cmdlet utilizzato al punto 8 oppure rilevando la presenza dell’evento 1458 nel registro eventi relativo ai Directory Services. Per ogni ruolo trasferito viene rilevato un evento
Verifica della funzione di Global Catalog sul nuovo server (11)
La procedura di installazione di un nuovo Domain controller lo imposta per default con la funzione di Global Catalog, tuttavia è importante verificare che questa condizione sia verificata e solo successivamente procedere con la rimozione del primo DC
1 |
Get-ADDomainController -Filter * | Select Name, IsGlobalCatalog |
Figura 13 rilevazione delle funzioni di Global Catalog
Una ulteriore verifica della completa integrazione del nuovo Domain Controller DC02 in dominio può essere effettuata tramite due comandi PowerShell che rilevano gli errori di replica a livello di dominio e di foresta
1 2 |
Get-ADReplicationFailure -Target ICTPOWER.LOCAL -Scope Domain Get-ADReplicationFailure -Target ICTPOWER.LOCAL -Scope Forest |
Se anche questo controllo non presenta eventi di errore possiamo procedere con il passo successivo cioè l’eliminazione di DC01 dall’infrastruttura
Rimozione del Domain Controller versione 2008 e modifica del livello Funzionale ( Funcional Level) a livello di dominio e di Foresta in AD
Questa operazione è da effettuarsi sul Domain Controller 2008 dopo aver fatto accesso con utente a privilegi elevati
- Accesso con privilegi di “Enterprise Admin”
- Dal menu Esegui digitare DCPROMO
- Seguire il Wizard con i passi proposti per la rimozione
- Spegnimento del server
- Modifica del Livello Funzionale di AD
Seguire il Wizard con i passi proposti per la rimozione (3)
Figura 14 Dcpromo
Figura 15 avviso controllo GC
Proseguendo con OK viene proposta la scelta in figura 14 dove è possibile rimuovere completamente il dominio, scelta ovviamente da non fare in questo contesto.
Figura 16 rimozione del Dominio (NON Selezionare)
Viene richiesto di impostare una nuova password per l’utente Administrator locale al server 2008 che rimarrà come membro del dominio migrato
Figura 17 impostazione password
Figura 18 Completamento del wizard e riavvio della macchina
A questo punto, riavviato il server questo risulterà membro del dominio ICTPOWER.LOCAL, sul server DC02 (2019) è ancora necessario eliminare dalla configurazione DNS della scheda di rete, i rifermenti all’indirizzo DNS relativi a DC01 (che era stato configurato in occasione della connessione in rete).
A questo proposito si può notare che la procedura di configurazione dei servizi AD su DC02 non ha modificato il valore impostato in origine ma ha aggiunto il loopback address.
Figura 19 configurazione IP DC02
Rimosso il riferimento al DC01 nella configurazione DNS il dominio è operativo con il nuovo server DC02 e con sistema operativo 2019.
Modifica del Livello Funzionale di AD
Tramite PowerShell possiamo rilevare l’attuale livello funzionale del Dominio e della Foresta
1 2 |
Get-AdDomain | format-list domainmode Get-AdForest | format-list forestmode |
Figura 20 livelli funzionali di dominio e foresta
Innalzamento del livello funzionale di Foresta e Dominio alla versione 2016
Come già accennato in precedenza pur con una versione server 2019 il massimo livello funzionale disponibile è 2016, quindi procederemo ad innalzare l’intera infrastruttura a questo livello
1 2 |
Set-ADDomainMode –identity ICTPOWER.LOCAL -DomainMode Windows2016Domain -Confirm:$False Set-ADForestMode –identity ICTPOWER.LOCAL -ForestMode Windows2016Forest -Confirm:$False |
Figura 21 innalzamento dei livelli funzionali
Forse non tutti sanno che:
Fino alla versione funzionale 2008 di dominio e foresta, l’operazione di innalzamento era a senso unico verso l’alto ossia 2000à2003à2008 e NON era reversibile.
Dalla versione 2008 R2 in poi è possibile in maniera molto semplice innalzare ed abbassare il livello funzionale di Dominio e Foresta, tuttavia è un’operazione possibile esclusivamente tramite PowerShell e non tramite GUI.
Figura 22 gestione del livello funzionale di dominio da AD Domain and Trust
Conclusioni:
seppur apparentemente molto semplice il processo di aggiornamento di Active Directory è necessario che venga pianificato e verificato fin nei minimi particolari, soprattutto in infrastrutture molto grandi e distribuite dove sono presenti applicativi che usano lo schema di AD per il loro funzionamento, piuttosto che autenticazione, una puntuale fase di test diventa imprescindibile.
Riferimenti:
Impostazioni consigliate per i software antivirus su DC
Controllo delle funzionalità di replica su AD
Livelli Funzionali di Active Directory
https://docs.microsoft.com/it-it/windows-server/identity/ad-ds/active-directory-functional-levels
Ruoli FSMO (Flexible Single Master Operation Roles) in Active Directory
https://docs.microsoft.com/it-it/troubleshoot/windows-server/identity/fsmo-roles