Al passare del tempo, il clock di un computer tende a perdere la sincronizzazione. Il Network Time Protocol (NTP) fornisce un modo per assicurarti che il tuo clock sia accurato.
Molti servizi Internet si basano sul fatto che il clock del computer sia accurato, o comunque traggono notevole beneficio da questo fatto. Per esempio, un web server può ricevere richieste di inviare un file se questo è stato modificato da una certa data. In un ambiente locale di rete, è essenziale che i computer che condividono i file dallo stesso file server abbiano clock sincronizzati cosicchè i timestamp dei file siano consistenti. Anche servizi come cron(8) si basano su un clock di sistema accurato per eseguire comandi al momento specificato.
FreeBSD è dotato del server ntpd(8) NTP che può essere usato per interrogare altri server NTP per impostare il clock sulla tua macchina o fornire servizi di time ad altri.
Per sincronizzare il tuo clock, avrai bisogno di scegliere uno o più server NTP da usare. Il tuo amministratore di rete o ISP potrebbe aver impostato un server NTP, a questo scopo - controlla la loro documentazione per vedere se questo è il caso. C'è una lista online di server NTP pubblicamente accessibili che tu puoi usare per trovare un server NTP vicino a te. Accertati di essere al corrente della politica di ogni server che scegli, e chiedi il permesso se necessario.
Scegliere molti server NTP non connessi fra loro è una buona idea in caso uno dei server che stai usando diventa irraggiungibile o il suo clock è inaffidabile. ntpd(8) usa le risposte che riceve da altri server in modo intelligente; favorirà server inaffidabili meno di quelli affidabili.
Se desideri solo sincronizzare il tuo clock al momento del boot della macchina, puoi usare ntpdate(8). Questo può essere appropriato per alcune macchine desktop che sono rebootate di frequente e richiedono sincronizzazione non frequente, ma le altre macchine dovrebbero eseguire ntpd(8).
Usare ntpdate(8) al momento del boot è una buona idea per le macchine che eseguono ntpdate(8). Il programma ntpd(8) cambia il clock gradualmente, mentre ntpdate(8) imposta il clock, indipentemente da quanto grande sia la differenza fra l'impostazione di clock corrente di una macchina e l'ora corretta.
Per abilitare ntpdate(8) al momento del boot,
aggiungi ntpdate_enable="YES"
a /etc/rc.conf
. Avrai anche
bisogno di specificare tutti i server
con i quali ti desideri
sincronizzare ed ogni flags passato a ntpdate(8)
in ntpdate_flags
.
NTP è configurato dal file
/etc/ntp.conf
nel formato
descritto da ntp.conf(5). Questo è
un semplice esempio:
server ntplocal.example.com prefer server timeserver.example.org server ntp2a.example.net driftfile /var/db/ntp.drift
L'opzione server
specifica
quali server siano da usare, con un server elencato
su ogni linea. Se un server è specificato con
l'argomento prefer
, come con
ntplocal.example.com
,
quel server saraà preferito rispetto ad
altri. Una risposta da un server preferito
sarà scartata se differisce
in modo significativo dalle risposte di altri server,
altrimenti sarà usata senza nessuna
considerazione delle altre risposte. L'argomento
prefer
è normalmente usato
per server NTP che sono noti per
essere molto accurati, come quelli con hardware a
monitoraggio speciale del tempo.
L'opzione driftfile
specifica
quale file sia usato per conservare la frequenza di
scostamento dal clock di sistema. Il programma
ntpd(8) usa questo dato per compensare
automaticamente le imprecisioni naturali del clock,
permettendo di mantenere una impostazione ragionevolmente
corretta anche se gli è impedito di accedere
a tutte le sorgenti di sincronizzazione tempo esterne
per un certo periodo di tempo.
L'opzione driftfile
specifica
quale file sia usato per conservare informazioni sulle
risposte precedenti dai server NTP che usi. Questo file
contiene informazioni interne per NTP. Non dovrebbe
essere modificato da altri processi.
Di default, il tuo server NTP sarà accessibile
a tutti gli host su Internet. L'opzione
restrict
in
/etc/ntp.conf
ti permette
di controllare quali macchine possano accedere al tuo
server.
Se vuoi negare a tutte le macchine accesso
al tuo server NTP, aggiungi la seguente linea a
/etc/ntp.conf
:
restrict default ignore
Inoltre questo settaggio vieta l'accesso al tuo server dai server elencati nella tua configurazione locale. Se hai bisogno di sincronizzare il tuo server NTP con un server NTP esterno devi permettere il server che vuoi usare. Guada la pagina man ntp.conf(5) per ulteriori dettagli.
Se vuoi permettere solo alle macchine della tua rete di sincronizzare il loro clock con il tuo server, ma assicurarti che non gli sia permesso configurare il server o che non sianousate come punto di riferimento per sincronizzarsi, aggiungi
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
invece, dove192.168.1.0
è un indirizzo IP sulla tua rete e
255.255.255.0
è la netmask della tua rete.
/etc/ntp.conf
può
contenere molte opzioni restrict
.
Per maggiori dettagli, consulta la sezione
Access Control Support
di
ntp.conf(5).
Per assicurarsi che il server NTP sia avviato
al momento del boot, aggiungi la linea
ntpd_enable="YES"
a
/etc/rc.conf
. Se desideri
passare flag addizionali a ntpd(8), edita
il parametro ntpd_flags
in /etc/rc.conf
.
Per avviare il server senza riavviare la tua
macchina, esegui ntpd
accertandoti
di specificare ogni parametro addizionale in
ntpd_flags
presente in
/etc/rc.conf
. Per esempio:
#
ntpd -p /var/run/ntpd.pid
Il programma ntpd(8) non necessita di una
connessione permanente ad Internet per funzionnare
correttamente. Comunque, se hai una connessione
temporanea che è configurata per effettuare
una chiamata su richiesta, è una buona idea
evitare che il traffico NTP causi la chiamata
o mantenga la connessione attiva. Se stai usando
PPP utente, puoi usare le direttive
filter
in
/etc/ppp/ppp.conf
.
Per esempio:
set filter dial 0 deny udp src eq 123 # Prevent NTP traffic from initiating dial out set filter dial 1 permit 0 0 set filter alive 0 deny udp src eq 123 # Prevent incoming NTP traffic from keeping the connection open set filter alive 1 deny udp dst eq 123 # Prevent outgoing NTP traffic from keeping the connection open set filter alive 2 permit 0/0 0/0
Pre maggiori dettagli consulta la sezione
PACKET FILTERING
in ppp(8)
e gli esempi in
/usr/share/examples/ppp/
.
Alcuni provider di accesso ad Internet bloccano le porte dal numero basso, impedendo ad NTP di funzionare dato che le repliche non raggiungono mai la tua macchina.
Questo, ed altri documenti, possono essere scaricati da ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
Per domande su FreeBSD, leggi la
documentazione prima di contattare
<questions@FreeBSD.org>.
Per domande su questa documentazione, invia una e-mail a
<doc@FreeBSD.org>.