NTP (Network Time Protocol) è un protocollo di rete responsabile della sincronizzazione degli orologi dei computer su una rete. Ha sia il server che i programmi client che risiedono sui sistemi in rete. Ogni server deve disporre di un software client NTP per sincronizzare il proprio orologio con il server dell'ora di rete e, nella maggior parte dei casi, risiede per impostazione predefinita nel sistema operativo del dispositivo.
Caratteristiche significative del server NTP
Ecco alcune caratteristiche di base di NTP:
- NTP richiede un orologio di riferimento che fornisca un'ora standard poiché tutti gli orologi di sistema hanno un'ora corretta, ma potrebbero avere piccole variazioni di bit, ma NTP calcola l'ora giusta utilizzando alcuni calcoli standard.
- Dipende dall'UTC (Universal Time Clock) come tempo di riferimento
- NTP è un protocollo a tolleranza d'errore che sincronizzerà l'ora risolvendo diverse fonti temporali e riducendo al minimo l'errore accumulato. Scarterà qualsiasi fonte di tempo imprecisa temporanea o permanente.
- È altamente scalabile; puoi aggiungere quante più sorgenti di tempo possibile in quanto ogni nodo comunicherà in bidirezionale o unidirezionale e trasmetterà il tempo formando una struttura ad albero con l'orologio di riferimento in cima.
- È molto accurato in quanto sceglie la migliore tra le sorgenti temporali disponibili con un margine di errore inferiore a un nanosecondo.
- Funziona anche quando la rete è temporaneamente inattiva poiché calcola il tempo dal passato per stimare l'ora corrente e il margine di errore.
In questa guida, ti mostreremo come installare il server NTP e il suo programma client su Ubuntu.
Requisiti
- Un server Ubuntu in esecuzione
- Un utente (root o non root) con privilegi sudo
Installazione del server NTP su Ubuntu
Prima di tutto, ti mostreremo la procedura passo passo per installare il server NTP su Ubuntu.
Passaggio 1: aggiornamento del repository di sistema
Per impostazione predefinita, il pacchetto Server NTP è disponibile nel repository dei pacchetti predefinito di Ubuntu, ma prima di installarlo, aggiorniamo il repository dei pacchetti utilizzando il comando seguente.
$ sudo apt update -y
Passaggio 2: installa il server NTP
Ora puoi installare il server NTP usando il comando seguente
$ sudo apt install ntp
Digita "Y" alla richiesta di conferma e premi Invio per continuare il processo di installazione.
Passaggio 3: confermare l'installazione del server NTP
Ora controlla lo stato di installazione del tuo server NTP usando il comando seguente
$ sntp --version
Passaggio 4: configurare il server NTP
Dopo l'installazione corretta, ora è il momento di configurarlo in modo che possa sincronizzare l'ora dal server NTP pubblico. Per farlo, devi modificare il file ntp.conf utilizzando il comando seguente.
$ sudo nano /etc/ntp.conf
Ora devi sostituire le righe sottostanti
piscina 0.ubuntu.piscina.ntp.org iburst piscina 1.ubuntu.piscina.ntp.org iburst piscina 2.ubuntu.piscina.ntp.org iburst piscina 3.ubuntu.piscina.ntp.org iburst
con il server di pool NTP desiderato per questo tutorial sto usando l'Europa. Puoi vedere l'elenco di NTP Pool Server qui
piscina 0.Europa.piscina.ntp.org iburst piscina 1.Europa.piscina.ntp.org iburst piscina 2.Europa.piscina.ntp.org iburst piscina 3.Europa.piscina.ntp.org iburst
Dopo aver sostituito la riga sopra, salva ed esci dal file di configurazione. Ora per applicare queste impostazioni, dobbiamo riavviare il servizio NTP usando il comando seguente below
$ sudo systemctl riavvia ntp
Ora, dopo il riavvio, puoi controllare lo stato del servizio NTP usando il comando seguente
$ sudo systemctl status ntp
Installazione del client NTP su Ubuntu
In questa sezione, ti mostreremo la procedura passo passo per installare il client NTP in modo che possiamo sincronizzarci con il nostro server NTP.
Passaggio 1: installa Ntpdate
Ntpdate è un programma che permette al sistema di sincronizzare data e ora collegandosi ad un server NTP. quindi installeremo Ntpdate usando il comando seguente
$ sudo apt install ntpdate
Passaggio 2: aggiungere l'IP del server NTP nel file host
Il client NTP deve risolvere il server NTP in base al nome host, quindi per questo è necessario aggiungere l'indirizzo IP e il nome host del server NTP nel file /etc/hosts.
Per modificare il file /etc/hosts usando il comando seguente
$ sudo nano /etc/hosts
Ora aggiungi l'IP del tuo server con il nome host nel file /etc/hosts in questo modo
Passaggio 3: verifica la sincronizzazione dell'ora del client
Ora testeremo il nostro sistema client se è sincronizzato con l'ora del server NTP, esegui il comando.
$ sudo ntpdate ntp-server-host
Passaggio 4: installazione del client NTP
Successivamente, abbiamo bisogno di installare un servizio NTP sul sistema client. Per ottenere ciò, usa il comando seguente below.
$ sudo apt install ntp
Passaggio 5: configurazione del client NTP
L'obiettivo in questo passaggio è utilizzare il server NTP configurato in precedenza per fungere da nostro server NTP. Perché ciò accada, dobbiamo modificare il file /etc/ntp.conf file.
$ sudo nano /etc/ntp.conf
aggiungerà le nostre impostazioni del server in questo modo
Salva ed esci dal file di configurazione.
Per rendere effettive le modifiche, riavviare il servizio NTP utilizzando il comando seguente
$ sudo systemctl riavvia ntp
Passaggio 6: verifica della coda di sincronizzazione dell'ora NPT
Ora client e server NTP non sono sincronizzati, puoi visualizzare i dettagli di sincronizzazione eseguendo il comando.
$ ntpq -p
l'output sarà come
A questo punto, hai configurato correttamente il server NTP su Ubuntu e hai anche impostato il client NTP da sincronizzare dal server NTP.