Configurazione Timeserver

Per prima cosa in una console come root digitare:

apt-cache search ntp
apt-get update && apt-get install  ntp ntp-doc
update-rc.d -f ntp defaults
avviare update-rc.d, dopo aver fatto un po' di configurazione

Sul sistema la documentazione si trova in:

/usr/share/doc/ntp-doc/html/index.html
ed aggiungerlo ai segnalibri!

È una documentazione molto ampia e non avremo bisogno di tutto il suo contenuto.

ntp si attiverà solo al riavvio, ma prima si dovrebbe impostare l'ora in maniera che sia quanto più esatta possibile.

ntp preleverà gli orari dalla lista di server presente in /etc/ntp.conf, che è il file principale da modificare.

Sia ntpdate che il demone ntpd [chiamato ntp] ottengono la lista di timeserver all'inizio di /etc/ntp.conf, come esempio ecco una lista:

 pool.ntp.org maps to more than 100 low-stratum NTP servers.
# Your server will pick a different set every time it starts up.
#  *** Please consider joining the pool! ***
#  ***  http://www.pool.ntp.org/#join  ***
server 192.168.3.24
server ntp.blueyonder.co.uk
server uk.pool.ntp.org
server 1.uk.pool.ntp.org
server 2.uk.pool.ntp.org
server 0.europe.pool.ntp.org
server 1.europe.pool.ntp.org
server 2.europe.pool.ntp.org

Il primo è un'altra macchina presente sulla stessa rete, con a sua volta ntp in esecuzione (su di essa è "server 192.168.3.1")

La seconda è il timeserver dell'ISP a cui si è connessi.

Poi ci sono un po' di uk.pool.ntp.org, poi un po' di timeserver europei che potrebbero essere migliori. Comunque gli stessi isp-nameserver di solito sono anche timeserver, si può controllare eseguendo:

ntpdate -v

Questo non cambierà nulla, ma restituirà un risultato tempo, qualcosa tipo:

# ntpdate -v 192.168.3.24
19 Sep 19:09:27 ntpdate[13329]: ntpdate 4.2.2@1.1532-o Wed Aug  9 12:08:54 UTC 2006 (1)

Una lista completa di server ntp si trova qui http://www.pool.ntp.org/

Si vuole permettere alle macchine locali l'accesso:

# Gli utenti locali potranno interrogare il server ntp più a fondo.
restrict 127.0.0.1 nomodify
restrict 192.168.3.0/24

Si vuole fornire l'ora alla sottorete locale:

# Se si vuole fornire l'ora a tutta la sottorete locale, modificare la linea seguente.
# (Come sempre, l'indirizzo è solo un esempio.)
broadcast 192.168.3.255

Il file ntp.conf è un po' strano, viene trattato come un diff se semplicemente ci si clicca sopra. Prima di avviare ntp, si deve impostare il tempo, ad es. :

# ntpdate -u -b uk.pool.ntp.org
19 Sep 19:19:33 ntpdate[15641]: step time server 62.3.200.116 offset 0.001523 sec

Poi attivare ntp come servizio, affinché parta ad ogni boot (in pratica, ad ogni riavvio). Dopo un po' che ntp è stato avviato, eseguire:

ntpq -pn

Se tutto è andato bene, si dovrebbe vedere qualcosa del tipo:

# ntpq -pn
remote           refid      st t when poll reach   delay   offset  jitter
----------------------------------------------------------------------------
192.168.3.24    .INIT.          16 u    - 1024    0    0.000    0.000   0.000
+194.117.157.4   192.5.41.40      2 u   97  128  377    7.849    1.548  30.157
*82.219.3.1      195.66.241.2     2 u  101  128  377   17.755    0.794  24.722
 82.133.58.132   .INIT.          16 u    - 1024    0    0.000    0.000   0.000
+194.153.168.75  195.66.241.3     2 u   37  128  377   23.475    3.259  12.203
+82.68.126.114   209.81.9.7       2 u  101  128  377   44.567   -1.366  46.922
+194.88.2.88     194.159.73.44    3 u   90  128  377   17.208   -5.569  27.527
+130.226.232.145 213.112.52.151   3 u   89  128  377   62.130   -0.797  39.999
 127.127.1.0     .LOCL.          10 l   18   64  377    0.000    0.000   0.001
 192.168.3.255   .BCST.          16 u    -   64    0    0.000    0.000   0.001

L'asterisco nella terza linea dell'esempio: *82.219.3.1, mostra il timeserver attivo, è la parte più importante. Significa che l'ora è esatta, e che è in uso la porta 123. Un esempio di linea iptables potrebbe essere:

# Network Time Protocol (NTP) Server
$IPT -A udp_inbound -p UDP -s 0/0 --destination-port 123 -j ACCEPT
$IPT -A INPUT -j ACCEPT -p tcp --dport 123
Content last revised 14/08/2010 0100 UTC