Come configurare Active Directory con PowerShell

Panoramica

In questo articolo vedremo come configurare un ambiente Active Directory (AD) su Windows Server utilizzando PowerShell, includendo l’aggiunta di un secondo controller di dominio (DC) per garantire ridondanza e alta disponibilità.

Variabili utilizzate

Nel corso della guida, i valori dipendenti dall’ambiente saranno indicati come segue. Sostituiscili con i tuoi valori effettivi.

Variabile Esempio Descrizione
<<DOMAIN_NAME>> example.local Nome del dominio Active Directory
<<NETBIOS_NAME>> EXAMPLE Nome NetBIOS (preferibilmente maiuscolo)
<<ADMIN_PASSWORD>> P@ssw0rd! Password per la modalità DSRM (Directory Services Restore Mode)
<<DOMAIN_ADMIN>> Administrator Account amministratore del dominio
<<DOMAIN_ADMIN_PASSWORD>> P@ssw0rd! Password dell’amministratore del dominio (usata per l’automazione)
<<INTERFACE_ALIAS>> Ethernet Nome dell’interfaccia di rete (es. Ethernet, Ethernet0, ecc.)
<<PRIMARY_DC_IP>> 192.168.1.10 Indirizzo IP del primo DC (primario)

Step 1: Installare il ruolo AD DS sul primo server

Esegui il comando seguente per installare Active Directory Domain Services (AD DS) sul primo server.

Install-WindowsFeature AD-Domain-Services -IncludeManagementTools

Step 2: Creare una nuova foresta e promuovere il primo DC

Crea una nuova foresta e promuovi il server come controller di dominio principale.

Livelli di funzionalità disponibili

Livello funzionale Nome enumerativo
Windows Server 2008 Window2008
Windows Server 2008 R2 Window2008R2
Windows Server 2012 Window2012
Windows Server 2012 R2 Window2012R2
Windows Server 2016 WinThreshold
Windows Server 2025 Win2025

💡 In questo esempio si utilizza il livello di funzionalità Windows Server 2016 (WinThreshold).

Install-ADDSForest `
 -DomainName "<<DOMAIN_NAME>>" `
 -DomainNetbiosName "<<NETBIOS_NAME>>" `
 -SafeModeAdministratorPassword (ConvertTo-SecureString "<<ADMIN_PASSWORD>>" -AsPlainText -Force) `
 -InstallDNS:$true `
 -ForestMode WinThreshold `
 -DomainMode WinThreshold `
 -Force

⚠️ Se richiesto, riavvia il server con il comando seguente:

Restart-Computer

Step 3: Verificare il primo DC

Dopo la promozione, verifica che il dominio sia stato creato correttamente.

Get-ADDomain
Get-ADDomainController
Get-Service DNS

Step 4: Installare AD DS sul secondo server

Installa AD DS sul secondo server.

Install-WindowsFeature AD-Domain-Services -IncludeManagementTools

Step 5: Configurare il DNS

Prima della promozione del secondo DC, assicurati che il DNS punti al controller di dominio primario.

# Verifica la configurazione DNS attuale
Get-DnsClientServerAddress

# Imposta l’indirizzo IP del primo DC come server DNS
Set-DnsClientServerAddress -InterfaceAlias "<<INTERFACE_ALIAS>>" -ServerAddresses "<<PRIMARY_DC_IP>>"

⚠️ Se il secondo server punta al proprio IP come DNS, la promozione fallirà.
Assicurati che il primo DC sia impostato come DNS primario.


Step 6: Promuovere il secondo DC

# Credenziali di accesso
$User = "<<NETBIOS_NAME>>\<<DOMAIN_ADMIN>>"
$Pass = ConvertTo-SecureString "<<DOMAIN_ADMIN_PASSWORD>>" -AsPlainText -Force
$Cred = New-Object System.Management.Automation.PSCredential($User, $Pass)

Install-ADDSDomainController `
 -DomainName "<<DOMAIN_NAME>>" `
 -Credential $Cred `
 -SafeModeAdministratorPassword (ConvertTo-SecureString "<<ADMIN_PASSWORD>>" -AsPlainText -Force) `
 -InstallDNS:$true `
 -Force

⚠️ Riavvia se richiesto:

Restart-Computer

Step 7: Verificare la configurazione dei DC

Controlla che entrambi i DC siano registrati e sincronizzati correttamente.

Get-ADDomainController -Filter *

Per un controllo più dettagliato della replica:

repadmin /replsummary
repadmin /showrepl

Step 8: Verificare DNS e sincronizzazione (opzionale)

Get-Service DNS
w32tm /query /status

Conclusione

Seguendo questi passaggi, puoi configurare un ambiente Active Directory completo con PowerShell e aggiungere un secondo controller di dominio per migliorare l’affidabilità e la ridondanza. Automatizzare questo processo consente una rapida distribuzione in ambienti multipli e una facile ricostruzione in caso di guasti.