Come installare NTP utilizzando Chrony in Linux
Mantenere data e ora precise su un sistema Linux è essenziale perché molti servizi come i processi cron e gli script si basano su un orario preciso per funzionare come previsto. Il Network Time Protocol, abbreviato in NTP, è un protocollo che mantiene l'ora precisa su un sistema Linux. È un protocollo Internet che svolge un ruolo nella sincronizzazione dell'orologio di un sistema Linux con i server NTP disponibili online.
Il buon vecchio demone ntpd utilizzato per sincronizzare le impostazioni di data e ora è stato deprecato e non è disponibile per i moderni sistemi Linux come Ubuntu 20.04, Fedora 30 e CentOS 8. Al suo posto abbiamo chrony , che è un'implementazione di NTP sviluppata da RedHat.
Chrony rappresenta una scelta migliore per i seguenti motivi:
Chrony sincronizza il tempo molto più velocemente del suo predecessore, NTP.
Compensa problemi di latenza e ritardi di rete.
-
Funziona ancora bene anche con il degrado della rete.
È possibile configurare un server locale con chrony in modo che agisca come server dell'ora da cui il resto dei PC client può ottenere le impostazioni di data e ora.
Struttura di Chrony
Chrony comprende il demone chronyd e lo strumento da riga di comando chronyc. Il demone chronyd viene eseguito silenziosamente in background e sincronizza l'ora del sistema con i server definiti nel file /etc/chrony.conf.
L'utilità della riga di comando chronyc consente agli utenti di interagire con chrony ed estrarre quante più informazioni possibili. Inizieremo installando Chrony su varie distribuzioni Linux.
Installa Chronyd su Linux
Nei sistemi moderni, Chronyd viene installato per impostazione predefinita. Tuttavia, chrony non è incluso nei vecchi sistemi Linux che si basano ancora sul pacchetto NTP deprecato.
Quindi, ecco come puoi installare Chrony.
Su Ubuntu/Debian/Mint
Su CentOS/RHEL
Una volta installato, abilita e avvia il demone Chronyd come segue:
Quindi conferma lo stato come segue:
Come puoi osservare, il demone chronyd è attivo e funziona come previsto.
File di configurazione di Chrony
Le impostazioni di Chrony sono definite nel file di configurazione /etc/chrony.conf o /etc/chrony/chrony.conf. Inizialmente non è richiesto alcun intervento poiché i valori predefiniti sincronizzano già il sistema con i pool di server NTP disponibili. Le principali distribuzioni Linux come Ubuntu, CentOS, RHEL e Fedora hanno i loro pool NTP predefiniti.
Dal file di configurazione seguente, il pool di server NTP su cui è sincronizzato il sistema Linux è pool 2.centos.pool.ntp.org iburst
Per Ubuntu, questo appare come mostrato.
Controlla la sincronizzazione dell'ora con Chronyc
Per confermare che Chrony sia effettivamente in esecuzione e visualizzare i peer e i server a cui è connesso, esegui il comando:
Per visualizzare un elenco dettagliato dei time server, dei loro indirizzi IP, dello sfasamento temporale e dell'offset, per citare solo alcuni parametri, eseguire:
Con il flag -v, puoi ottenere informazioni più dettagliate come mostrato:
Puoi anche confermare che il chrony è sincronizzato utilizzando il comando seguente. L'ID di riferimento fornisce il nome del server a cui punta il sistema per ottenere le impostazioni di data e ora. Altri dettagli come Ultimo offset e Ora del sistema indicano quanto è lontano il sistema dal server NTP.
Anche il comando timedatectl torna utile e ti aiuta a sapere se il servizio NTP è abilitato o meno.
Configurare il client NTP
Per configurare un altro sistema nella tua LAN come client e indirizzarlo al tuo server NTP, ecco i passaggi da seguire.
Sul server NTP, vai al file di configurazione di Chrony e rimuovi il commento dalla direttiva di autorizzazione e specifica la maschera di sottorete. Nel mio caso, la maschera di sottorete è 192.168.2.0/24.
Salvare ed uscire dal file di configurazione.
Assicurati di consentire il servizio NTP attraverso il firewall. Nel mio caso, aprirò il firewall su CentOS 8 come segue:
Quindi ricarica per rendere effettive le modifiche:
Successivamente, riavvia il demone chronyd.
Sul client o sul sistema remoto, rimuovere il commento da tutti i pool NTP e aggiungere la riga mostrata. L'indirizzo IP fornito è l'IP del server NTP. Nel tuo caso, questo, ovviamente, sarà diverso, quindi modificalo di conseguenza.
server 192.168.2.109
Ancora una volta, riavvia il demone chronyd affinché le modifiche si riflettano
Il sistema client verrà ora indirizzato al server NTP sulla stessa rete come mostrato.
Conclusione
Abbiamo dimostrato come installare NTP su Linux utilizzando il servizio Chrony e come configurare un sistema client in modo che punti a un server NTP.