Logo NEXSYS menu
ISO 9001

Nexsys Srl è certificata
ISO 9001:2015

Microsoft Solutions Partner

Siamo Microsoft Solution Partner per il Modern Work

APPROFONDIMENTI E NEWS

Configurare NTP su Windows Server: guida per Active Directory

La sincronizzazione dell’orario è un requisito fondamentale per il corretto funzionamento di un dominio Active Directory.

Kerberos, replica tra Domain Controller, certificati digitali, log di sicurezza e applicazioni aziendali dipendono da un riferimento temporale coerente. Un disallineamento può provocare errori di autenticazione, ticket Kerberos non validi, anomalie nella replica e difficoltà nella correlazione degli eventi di sicurezza.

In questa guida vediamo come configurare il servizio NTP su Windows Server 2016, 2019, 2022 e 2025 utilizzando w32tm, come identificare il PDC Emulator della foresta radice e come verificare che server e client seguano correttamente la gerarchia temporale del dominio.

Per comprendere meglio ruoli, Domain Controller e struttura del dominio, consulta anche la guida su come funziona Active Directory.

Come funziona la sincronizzazione dell'orario in Active Directory

In un dominio Windows, l’orario non deve essere configurato manualmente su ogni server e workstation.

Active Directory utilizza una gerarchia temporale:

  • i client e i member server sincronizzano l’orario tramite un Domain Controller;
  • i Domain Controller seguono la gerarchia del dominio;
  • il PDC Emulator di ogni dominio rappresenta il riferimento temporale principale del dominio;
  • il PDC Emulator del dominio radice della foresta sincronizza l’orario con una sorgente NTP esterna autorevole.

La configurazione delle sorgenti NTP esterne deve quindi essere applicata esclusivamente al PDC Emulator del dominio radice della foresta.

Gli altri Domain Controller, i server membri e i client devono mantenere il tipo di sincronizzazione NT5DS, cioè utilizzare la gerarchia temporale di Active Directory.

Questa architettura evita configurazioni divergenti, loop di sincronizzazione e differenze di orario tra sistemi.

 

Individuare il PDC Emulator della foresta radice

Prima di modificare il servizio Windows Time è necessario identificare il Domain Controller che detiene il ruolo FSMO di PDC Emulator.

Dal dominio radice della foresta, apri un prompt dei comandi con privilegi amministrativi ed esegui:

>netdom query fsmo

Il comando restituisce i cinque ruoli FSMO. Il server indicato accanto alla voce PDC è il sistema sul quale configurare le sorgenti NTP esterne.

In alternativa, con PowerShell e il modulo Active Directory:

$RootDomain = (Get-ADForest).RootDomain Get-ADDomain -Identity $RootDomain | Select-Object DNSRoot, PDCEmulator

Questa seconda procedura individua esplicitamente il PDC Emulator del dominio radice, anche in una foresta composta da più domini.

Verifica tecnica Active Directory

Il dominio presenta errori Kerberos, problemi di replica o configurazioni FSMO non documentate? L’assessment Nexsys verifica ruoli FSMO, replica, DNS, GPO, protocolli legacy, deleghe e percorsi di escalation.

Individuare il PDC Emulator della foresta radice

Accedi al PDC Emulator del dominio radice e apri PowerShell o il prompt dei comandi come amministratore.

Per utilizzare i tre server NTP primari dell’INRiM, esegui:

>w32tm /config /manualpeerlist:"ntp1.inrim.it,0x8 ntp2.inrim.it,0x8 time.inrim.it,0x8" /syncfromflags:manual /reliable:yes /update

Riavvia quindi il servizio Windows Time:

>Restart-Service w32time

Forza la riscoperta delle sorgenti e una nuova sincronizzazione: 

>w32tm /resync /rediscover

Il parametro 0x8 imposta W32Time in modalità NTP client. È la modalità normalmente indicata per interrogare server NTP esterni che non utilizzano la modalità simmetrica proprietaria di Windows.

Il parametro /reliable:yes indica che il Domain Controller è una sorgente temporale affidabile per la gerarchia del dominio. Questa opzione deve essere utilizzata sul PDC Emulator, non sui normali server membri.

I peer indicati nella manualpeerlist devono essere separati da spazi e l’intera lista deve essere racchiusa tra virgolette.

Microsoft raccomanda di utilizzare almeno tre sorgenti temporali quando si configurano più peer. I server INRiM utilizzati nell’esempio sono collegati alla scala di tempo nazionale italiana UTC(IT).

Verificare la configurazione NTP

Dopo aver applicato la configurazione, verifica la sorgente temporale corrente:

>w32tm /query /source

Il risultato deve mostrare uno dei server NTP configurati e non:

>Local CMOS Clock

Verifica lo stato completo della sincronizzazione:

>w32tm /query /status

I dati principali da controllare sono:

  • Source: sorgente temporale utilizzata;
  • Stratum: livello gerarchico della sorgente NTP;
  • Last Successful Sync Time: data e ora dell’ultima sincronizzazione;
  • Poll Interval: intervallo corrente tra le interrogazioni;
  • Phase Offset: differenza rilevata rispetto alla sorgente.

Per visualizzare i peer configurati:

>w32tm /query /peers

Per verificare la configurazione completa e l’origine dei singoli parametri:

>w32tm /query /configuration

Il comando mostra anche se un’impostazione deriva dalla configurazione locale oppure da una Group Policy.

Testare la raggiungibilità del server NTP

Per verificare se il PDC riceve risposte dal server NTP, utilizza:

>w32tm /stripchart /computer:ntp1.inrim.it /dataonly /samples:5

Il comando mostra una serie di campioni con il relativo offset temporale.

Se non vengono ricevute risposte, verifica:

  • risoluzione DNS del nome NTP;
  • connettività Internet del Domain Controller;
  • policy firewall;
  • eventuali ACL su router e firewall per UDP 123;
  • sistemi IPS o security appliance che possono bloccare o modificare il traffico NTP.

Il servizio Windows Time utilizza il protocollo NTP sulla porta UDP 123. La regola di rete deve consentire la comunicazione verso i server configurati e il relativo traffico di risposta.

Ripristinare la gerarchia di dominio su server e client

Un server appartenente al dominio non dovrebbe normalmente utilizzare server NTP esterni configurati manualmente.

Se un member server, un client o un Domain Controller secondario presenta una configurazione manuale errata, ripristina la sincronizzazione dalla gerarchia Active Directory:

>w32tm /config /syncfromflags:domhier /update

Riavvia il servizio:

>Restart-Service w32time

Forza quindi la riscoperta della sorgente:

>w32tm /resync /rediscover

Verifica il risultato:

>w32tm /query /source

Su un sistema appartenente al dominio, la sorgente dovrebbe essere un Domain Controller o un altro riferimento coerente con la gerarchia AD.

Non configurare manualmente ntp1.inrim.it, time.windows.com o altri server pubblici su ogni workstation: questa impostazione aggirerebbe la gerarchia temporale del dominio.

Configurare NTP tramite Group Policy

Negli ambienti enterprise è preferibile gestire la configurazione del PDC Emulator tramite una Group Policy dedicata.

Questo permette di:

  • documentare centralmente la configurazione;
  • evitare modifiche locali non tracciate;
  • applicare nuovamente le impostazioni in caso di variazioni;
  • trasferire dinamicamente la configurazione quando cambia il ruolo PDC Emulator.

Apri la Group Policy Management Console:

>gpmc.msc

Crea una GPO con un nome descrittivo, per esempio:

>DC - Root PDC External NTP

Modifica la GPO e raggiungi:

Computer Configuration Administrative Templates System Windows Time Service Time Providers

Configura Configure Windows NTP Client con i seguenti valori:

State: Enabled NtpServer: ntp1.inrim.it,0x8 ntp2.inrim.it,0x8 time.inrim.it,0x8 Type: NTP

Abilita anche:

>Enable Windows NTP Client: Enabled

Nelle impostazioni globali del servizio Windows Time può essere configurato il valore:

>AnnounceFlags: 5

La GPO deve essere collegata alla OU Domain Controllers del dominio radice, ma non deve applicarsi indiscriminatamente a tutti i Domain Controller.

Per indirizzare dinamicamente il solo PDC Emulator, crea un filtro WMI con la seguente query:

>Select * from Win32_ComputerSystem where DomainRole = 5

Associa il filtro WMI alla GPO.

In questo modo, quando il ruolo PDC Emulator viene trasferito a un altro Domain Controller del dominio radice, la policy può seguire automaticamente il nuovo role holder al successivo aggiornamento dei criteri.

Forza l’elaborazione sul PDC:

>gpupdate /force

Quindi esegui:

>w32tm /resync /rediscover

Verifica infine configurazione e sorgente:

w32tm /query /configuration w32tm /query /source

Per approfondire scope, Security Filtering, WMI Filtering e troubleshooting dei criteri, consulta la guida alle Group Policy in ambiente Windows.

active directory 

Differenza tra i flag 0x8 e 0x9

I flag applicati ai peer NTP possono essere combinati:

  • 0x1: usa SpecialPollInterval;
  • 0x2: utilizza il peer solo come fallback;
  • 0x4: usa la modalità Symmetric Active;
  • 0x8: usa la modalità Client.

Il valore 0x9 corrisponde alla combinazione:

>0x8 + 0x1

quindi abilita la modalità client e utilizza l’intervallo definito in SpecialPollInterval.

Non deve essere descritto semplicemente come “Client”: la modalità client è rappresentata dal solo flag 0x8.

Per una configurazione standard verso server NTP pubblici è possibile utilizzare 0x8. Il valore 0x9 ha senso quando si vuole controllare esplicitamente il polling tramite SpecialPollInterval.

Troubleshooting: NTP non si sincronizza

La sorgente è Local CMOS Clock

Se il comando:

>w32tm /query /source

restituisce Local CMOS Clock, il server non sta utilizzando correttamente una sorgente esterna.

Controlla:

w32tm /query /configuration w32tm /query /peers

Verifica che:

  • Type sia impostato su NTP;
  • i peer siano presenti;
  • il servizio W32Time sia avviato;
  • la porta UDP 123 non sia bloccata;
  • una GPO non sovrascriva la configurazione locale.

Nessun dato temporale disponibile

L'errore:

>The computer did not resync because no time data was available

indica generalmente che il server non riceve campioni validi dalle sorgenti configurate.

Esegui:

>w32tm /stripchart /computer:ntp1.inrim.it /dataonly /samples:5

Se il test non restituisce campioni, verifica DNS, routing e firewall.

I peer risultano Pending

Se w32tm /query /peers mostra lo stato Pending, riavvia il servizio e forza una nuova individuazione:

>Restart-Service w32time
>w32tm /resync /rediscover

Controlla quindi il registro eventi:

Get-WinEvent -FilterHashtable @{ LogName = 'System' ProviderName = 'Microsoft-Windows-Time-Service' } -MaxEvents 20

Un client continua a usare un server NTP esterno

Ripristina la gerarchia di dominio:

>w32tm /config /syncfromflags:domhier /update
>Restart-Service w32time
>w32tm /resync /rediscover

Se la configurazione ritorna dopo l’aggiornamento delle policy, individua la GPO responsabile:

>gpresult /h C:\Temp\gpresult.html

Apri il report e controlla le impostazioni relative a Windows Time Service.

L'orario è disallineato dopo il trasferimento dei ruoli FSMO

Dopo un trasferimento o un seizure del ruolo PDC Emulator, verifica immediatamente:

$RootDomain = (Get-ADForest).RootDomain Get-ADDomain -Identity $RootDomain | Select-Object PDCEmulator

Sul nuovo PDC controlla:

w32tm /query /configuration w32tm /query /source

Il vecchio PDC deve tornare a utilizzare la gerarchia del dominio, mentre il nuovo PDC deve ricevere la configurazione delle sorgenti esterne.

Se l’infrastruttura è oggetto di sostituzione o consolidamento dei Domain Controller, consulta il servizio di migrazione e consolidamento Active Directory.

NTP e Domain Controller virtualizzati

La sincronizzazione dei Domain Controller virtualizzati deve essere progettata evitando conflitti tra:

  • Windows Time Service;
  • gerarchia Active Directory;
  • servizi di integrazione dell’hypervisor;
  • sorgente temporale dell’host.

Il PDC Emulator della foresta radice deve utilizzare la sorgente NTP esterna prevista dall’architettura. L’hypervisor non deve sovrascrivere continuamente l’orario fornito da W32Time.

La configurazione dipende dalla piattaforma utilizzata: Hyper-V, VMware vSphere e Azure adottano meccanismi di integrazione differenti. Non è quindi corretto disabilitare indiscriminatamente ogni forma di sincronizzazione host-guest su tutte le macchine virtuali.

È necessario verificare in particolare:

  • quale provider temporale è attivo;
  • se il guest riceve correzioni sia dall’hypervisor sia da W32Time;
  • il comportamento durante snapshot, restore e migrazioni;
  • la configurazione specifica del PDC Emulator;
  • la sorgente utilizzata dagli host di virtualizzazione.

 

Perché NTP è rilevante per la sicurezza Active Directory

Kerberos utilizza timestamp per verificare la validità dei ticket e contrastare i replay attack.

Un’eccessiva differenza di orario tra client e Domain Controller può provocare errori come:

KRB_AP_ERR_SKEW KDC_ERR_SKEW

La sincronizzazione temporale è inoltre fondamentale per:

⚙️

Correlare eventi provenienti da server, endpoint, firewall e SIEM.

⏱️

Ricostruire correttamente una timeline durante un incidente.

🔒

Verificare la validità temporale dei certificati digitali.

🛡️

Analizzare le autenticazioni e le modifiche amministrative.

📋

Produrre log affidabili durante audit di conformità e attività forensi.

Una configurazione NTP corretta non è quindi soltanto una misura di stabilità sistemistica, ma una componente della postura di sicurezza del dominio.

Quando verificare nuovamente la configurazione

Dopo il trasferimento dei ruoli FSMO

Dopo la promozione o dismissione di un Domain Controller

Dopo una migrazione Active Directory

Dopo un restore o un intervento di disaster recovery

Dopo modifiche a firewall, routing o DNS

Dopo modifiche alla piattaforma di virtualizzazione

In presenza di errori Kerberos o autenticazioni intermittenti

Quando i timestamp dei log non risultano coerenti

Prima di un audit o di un progetto di hardening

Best practice per il servizio Windows Time

Configura le fonti NTP esterne solo sul PDC Emulator del dominio radice

Utilizza almeno tre sorgenti temporali affidabili

Mantieni client e member server configurati su NT5DS

Evita configurazioni manuali divergenti nei sistemi del dominio

Documenta chiaramente peer NTP, GPO e criteri firewall

Verifica la sorgente dopo ogni trasferimento di ruolo FSMO

Monitora gli eventi del provider Windows Time Service nei log di sistema

Controlla periodicamente offset e data di ultima sincronizzazione

Gestisci separatamente la sincronizzazione dei Domain Controller virtualizzati

Non utilizzare il Local CMOS Clock come riferimento ordinario del dominio

FAQ sulla configurazione NTP in Windows Server

Quale Domain Controller deve sincronizzarsi con Internet?

Il PDC Emulator del dominio radice della foresta. Gli altri sistemi devono seguire la gerarchia temporale di Active Directory.

Devo configurare NTP su tutti i Domain Controller?

No. I Domain Controller diversi dal PDC Emulator del dominio radice devono normalmente sincronizzarsi tramite la gerarchia del dominio.

Quale comando configura NTP su Windows Server?

Il comando principale da eseguire sul PDC Emulator del dominio radice è:

>w32tm /config /manualpeerlist:"SERVER1,0x8 SERVER2,0x8 SERVER3,0x8" /syncfromflags:manual /reliable:yes /update

Come verifico il server NTP utilizzato?

Esegui w32tm /query /source. Per maggiori informazioni puoi verificare anche lo stato, i peer e la configurazione con i seguenti comandi:

>w32tm /query /status >w32tm /query /peers >w32tm /query /configuration

Qual è la porta utilizzata da NTP?

NTP utilizza la porta UDP 123.

Cosa significa il flag 0x8?

Il flag 0x8 imposta W32Time in modalità NTP client.

Cosa significa il flag 0x9?

0x9 combina la modalità client 0x8 con SpecialInterval, rappresentato da 0x1.

Come riporto un server alla sincronizzazione di dominio?

Esegui il comando per ripristinare la gerarchia:

>w32tm /config /syncfromflags:domhier /update

In seguito, riavvia W32Time e forza la riscoperta:

>w32tm /resync /rediscover

Formazione Active Directory per amministratori IT

La gestione del servizio Windows Time è soltanto uno degli aspetti operativi di un’infrastruttura Active Directory. Il corso Nexsys approfondisce Domain Controller, DNS, replica, ruoli FSMO, Group Policy, deleghe, troubleshooting e sicurezza del dominio con esercitazioni pratiche.

Verifica della configurazione Active Directory

Errori NTP possono indicare problemi di replica, DNS, ruoli FSMO o Group Policy. Nexsys esegue assessment e remediation Active Directory.