Risoluzione dei problemi del servizio orario di Windows
Il Gennaio 4, 2022 da adminIl servizio orario di Windows è molto importante in Active Directory. Per impostazione predefinita, l’autenticazione Kerberos richiede che gli orologi di tutte le macchine nel dominio siano sincronizzati entro cinque minuti l’uno dall’altro, quando sono corretti per le differenze di fuso orario e l’ora legale. Le macchine i cui orologi sono al di fuori di questo intervallo non saranno in grado di autenticarsi e quindi non avranno accesso alle risorse del dominio.
In un dominio AD, il controller di dominio (DC) con il ruolo PDC Emulator FSMO è il master time server per l’intero dominio. Questo non significa che ogni macchina nel dominio sincronizza il suo orologio direttamente con il PDC Emulator, tuttavia. Altri DC si sincronizzano con il PDC Emulator, mentre i server membri e i client possono sincronizzarsi con qualsiasi DC. In questa gerarchia, il PDC Emulator dovrebbe essere l’unica macchina configurata per sincronizzarsi con una fonte di tempo esterna, come un server NTP pubblico. Tutto il resto nel dominio dovrebbe essere configurato per sincronizzarsi con AD. Qualsiasi altra configurazione può provocare una perdita di sincronizzazione dell’orologio.
Riferimento a questo sito TechNet per informazioni dettagliate su come funziona il servizio Windows Time.
Determinare la portata del problema
Il primo passo nella risoluzione di un problema del servizio Windows Time dovrebbe essere quello di determinare quante macchine sono interessate. Se l’ora non è corretta su una sola macchina, i passi necessari per risolvere il problema saranno diversi da quelli necessari per risolvere un problema di tempo a livello di dominio.
Se solo alcune macchine sono interessate
- Se la macchina interessata esegue Windows Vista o successivo, esegui w32tm /query /source al prompt dei comandi per determinare la fonte di tempo della macchina interessata. Una fonte temporale esterna dovrebbe essere elencata solo se questo comando viene eseguito sul PDC Emulator; altrimenti, il comando dovrebbe mostrare il nome di un DC nel dominio.
- Il comando w32tm /query /status mostra anche la fonte temporale della macchina, così come altre informazioni potenzialmente utili. Lo switch /verbose fornisce ancora più informazioni. Come per il primo comando, questi switch sono disponibili solo su macchine con Windows Vista o successivo.
- Se la fonte di tempo corretta è elencata, potete usare w32tm /resync per tentare di risincronizzare l’orologio della macchina con la fonte di tempo. Aggiungendo l’opzione /rediscover a questo comando si fa in modo che la macchina tenti prima di scoprire le fonti di tempo della rete, poi tenti una risincronizzazione.
- Per cambiare la fonte di tempo della macchina, si può usare uno dei due comandi:
w32tm /config /syncfromflags:DOMHIER /update configura la macchina per usare la gerarchia del dominio (AD) come fonte di tempo.
w32tm /config /syncfromflags:MANUAL /manualpeerlist:<list> /update configura la macchina per usare i time server in <list> come fonte dell’ora.NOTA: Se più time server sono specificati in <list>, devono essere separati da spazi e l’intera lista deve essere racchiusa tra virgolette.
Se l’intero dominio è interessato
- Se l’ora non è corretta su tutte le macchine nel dominio, il PDC Emulator è molto probabilmente la fonte del problema. Esegui il comando netdom query fsmo su un DC per determinare quale DC detiene il ruolo di PDC Emulator.
- Esegui w32tm /query /source da un prompt dei comandi sul PDC Emulator per assicurarti che sia configurato per sincronizzarsi con una fonte temporale esterna. Il PDC Emulator non dovrebbe mai essere configurato per sincronizzarsi con il dominio, poiché è la fonte di tempo principale del dominio.
- Se il PDC Emulator è una macchina virtuale (VM), disabilita la sincronizzazione dell’orologio del guest-host. La procedura per fare questo dipende dal sistema operativo in esecuzione sull’host di virtualizzazione.
- Per configurare l’emulatore PDC per sincronizzarsi con uno o più time server esterni, usa il seguente comando:
w32tm /config /syncfromflags:MANUAL /manualpeerlist:<list> /updateNOTA: Se più time server sono specificati in <list>, devono essere separati da spazi e l’intera lista deve essere racchiusa tra virgolette.
Impostazioni del registro del servizio Windows Time
I comandi w32tm specificati nelle procedure precedenti apportano modifiche ai valori del registro del servizio Windows Time, che si trovano tutti sotto la seguente chiave di registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time
È possibile impostare questi valori manualmente piuttosto che usare i comandi w32tm, naturalmente. Se si sceglie di farlo, i seguenti siti possono risultare utili:
- Strumenti e impostazioni del servizio Windows Time (include una sezione sulle impostazioni del registro di sistema)
- Come configurare un time server autorevole in Windows Server
Group Policy
Se si apportano modifiche al servizio Windows Time usando i comandi w32tm o tramite il registro di sistema, ma queste modifiche non hanno alcun effetto o hanno effetto solo per un breve periodo di tempo prima di ritornare ai loro valori precedenti, potrebbe esserci un oggetto dei Criteri di gruppo (GPO) che sovrascrive le tue modifiche. Le impostazioni dei Criteri di gruppo per il servizio Windows Time includono molti degli stessi elementi che possono essere configurati tramite il registro o i comandi w32tm. Queste impostazioni possono essere trovate nella seguente posizione:
Computer Configuration\Policies\Administrative Templates\System\Windows Time Service
Ripristina i valori del registro del servizio Windows Time alle impostazioni predefinite
Se tutto il resto fallisce, questa procedura ripristinerà il servizio Windows Time alle sue impostazioni predefinite:
- Apri la console Servizi e ferma il servizio Windows Time (o esegui net stop w32time da un prompt dei comandi) se è in esecuzione.
- Apri un prompt dei comandi elevato ed esegui w32tm /unregister per rimuovere il servizio Windows Time dal registro. Il servizio non sarà più elencato nella console dei servizi.
- Esegui w32tm /register per ricreare il servizio con le sue impostazioni di registro predefinite.
- Fai tutte le modifiche di registro necessarie, quindi avvia il servizio Windows Time nella console dei servizi o con il comando net start w32time.
Lascia un commento