Prima o poi ad ogni sistemista capita di dover combattere con la questione degli orari dei computer della rete.
La documentazione Microsoft in verità è ottima ed abbondante.... forse anche troppo abbondante, ecco il motivo di questo articolo, vediamo se riusciamo a fare un riassunto il più funzionale possibile.
Il servizio Time di Windows (W32Time) si occupa di mantenere sincronizzati gli orari dei computer in ambiente Microsoft.
La questione è di vitale importanza per il corretto funzionamento di una rete Microsoft in quanto il protocollo di autenticazione Kerberos tollera, di default, una differenza di orario al massimo 5 minuti in fase di autenticazione, altrimenti la blocca.
(nell'immagine si evidenzia il parametro di impostazione all'interno di una Group Policy)
NTP
W32time è un'implementazione del protocollo NTP (Network Time Protocol) che, attraverso una serie di complessi algoritmi, assicura che gli orologi dei computer all'interno di una rete siano il più accurati possibile.
L' NTP è l'evoluzione del protocollo SNTP (Simple Network Time Protocol) che veniva utilizzato nelle versioni precendenti di Windows (es: Windows 2000) con cui garantisce perfetta interoperabilità.
Per fare questo nell'ambito di un dominio AD DS tutti gli orologi dei computer vengono sincronizzati con l'ora di un computer considerato autorevole, mentre i computer standalone sincronizzano, di default, con il server NTP Internet della Microsoft: time.windows.com.
La sincronizzazione dell'orario NTP avviene ad intervalli prestabiliti e comporta il trasferimento di pacchetti NTP sulla rete. La porta utilizzata è la UDP 123 (la stessa dell'SNTP).
Windows Time service
E' un paccheto completo di sincronizzazione che supporta i cosiddetti Fornitori di Orario (Time Providers) che si occupano o di ottenere un orario accurato (dalla rete o da un HW apposito es: GPS) o di fornire l'orario agli altri computer della rete. Per cui il Windows Time Service consiste di due diversi componenti:
- NtpServer: fornitore di orario in uscita, in grado di rispondere alle richieste dei client sulla rete.
- NtpClient: fornitore di orario in entrata, che ottiene dati sull'orario che sono utilizzati per sincronizzare l'orologio locale del computer.
Archittetura del Servizio Orario di Windows - Fonte Technet
Il servizio si chiama W32Time e può essere fermato ed avviato tramite i comandi:
Net Stop w32time
Net Start w32time
La gerarchia degli orari
- Se non è membro di un dominio si configura con la sorgente di orario esplicitamente indicata.
- Se è una macchina virtuale si sincronizza tramite i servizi di integrazione, almeno che non venga disabilitato, con l'orario del computer Host. Attenzione disabilitare sempre questa funzione in caso di Server AD DC virtuale!
- Se è un client o un server membro di un dominio, di default, segue la gerarchia di AD e si sincronizza con il controller del proprio dominio che sta agendo come NTPServer.
- Se è un controller di dominio si sincronizza con il Domain Controller che detienene il ruolo FSMO di PDC Emulator (si può facilmente identificare usando il comando: Netdom Query Fsmo).
- Se è il PDC Emulator si sincronizza con un server NTP esterno (o con un Time Server HW)
Gerarchia del Servizio Orario di Windows - Fonte Technet (modificata)
Questa gerarchia trova riscontro nel concetto di Strato riportato, ad esempio, in risposta al comando W32tm /monitor (eseguire il comando come amministratore)
La configurazione
Ricapitolando all'interno di un dominio abbiamo i normali client, i controllori di dominio ed in capo a tutti il DC che detiene il ruolo Fsmo di Pdc Emulator, quindi i nostri obiettivi sono:
- Configurare la sincronizzazione del PDC emulator con una sorgente esterna e qui trovate una fix che fa un pò tutto da sola, dovete solo scegliere i Time Server da usare: Vi consiglio di scegliere qualcosa di ridondante del tipo: 0.it.pool.ntp.org,0x8 1.it.pool.ntp.org,0x8 2.it.pool.ntp.org,0x8 3.it.pool.ntp.org,0x8 (NB: time.windows.com non è affidabile!).
Il valore specificato dopo il nome DNS 0x01 corrisponde al seguente schema:
* 0x01 Intervallo speciale
* 0x02 Usa solo per failback
* 0x04 Attivo Simmetrico
* 0x08 Client
Di default troveremo preimpostato time.windows.com, 0x09 dove 0x09=0x08+0x01
- Configurare i client per sincronizzarsi automaticamente con il Dominio questa operazione non dovrebbe essere necessaria in quanto di default tutti i client di dominio si sincronizzano con AD.
Gli Strumenti di configurazione
Innanzitutto specifichiamo gli strumenti che abbiamo a disposizione:
A) l'area di registro HKLM\SYSTEM\CurrentControlSet\Services\W32Time a cui accediamo tramite il comando Regedit.
HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\Type: NTP per il PDCE o computer standalone, NT5DS per i computer membri
HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags: 5 per il PDCE
HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\NtpServer: time.windows.com,0x1 per i PDCE o computer standalone
B) il modello amministrativo all'interno delle GPO: Computer-> Modelli amministrativi-> Sistema -> Servizio Ora di Windows
Fondamentamentalmente lo usiamo per attivare e disattivare i componenti NTP Client e NTPO server.
Attenzione in alcuni casi ho riscontrato che la Default Domain Policy disattivava l'NTP Server e Client!
C) Il comando w32tm Il comando "principe" che ci fornisce ottimi strumenti di configurazione che di analisi e debug. I comandi fondamentali:
w32tm /config /syncfromflags:domhier /update
Impone ad un client la sincronizzazione con il dominio
w32tm /config /manualpeerlist: servers /syncfromflags:manual /reliable:yes /update
Servers: lista dei Server NTP
Imposta il PDCE per la sincronizzazione con i server NTP indicati
Es: w32tm /config /manualpeerlist:"0.it.pool.ntp.org,0x8 1.it.pool.ntp.org,0x8 2.it.pool.ntp.org,0x8 3.it.pool.ntp.org,0x8" /syncfromflags:manual /reliable:yes /update
w32tm /stripchart /computer:obiettivo /samples: n /dataonly
obiettivo: server NTP
n: numero di campionemanti effettuati
Es: w32tm /stripchart /computer:time.windows.com /samples:5 /dataonly
Riporta la differenza di orario con il server indicato nel parametro obiettivo
w32tm /resync
Forza una sincronizzazione degli orari usato spesso con i parametri /rediscover e/o /nowait
w32tm /monitor
Esegue il monitoraggio della configurazione e lo stato della gerarchiain AD
w32tm /query /source
Mostra la sorgente di sincronizzazione dell'ora
w32tm /unregister
Elimina il Servizio Ora di Windows e tutte le sue configurazioni
w32tm /register
Abilita il Servizio Ora di Windows con le impostazioni di default
D) i comandi NET. E' buona norma dopo avere apportato modifiche di configurazione fermare e riavviare il servizio.
NET Stop w32time Ferma il Servizio Ora di Windows
Net Start w32time Avvia il Servizio Ora di Windows
Spero che questo articolo possa esservi di aiuto. Come al solito ogni segnalazione e precisazione è la benvenuta.
Nessun commento:
Posta un commento