Configurazione Timeserver

Per prima cosa in 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 si trova la documentazione a:

/usr/share/doc/ntp-doc/html/index.html

eventualmente aggiungerlo ai segnalibri!

Quello di cui sopra è 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 quanto più esatta possibile.

Dal momento che ntp è eseguito come servizio ntpdate è già presente su sidux. Per controllare se ntp è attivato sul PC:

sux
rcconf
(usare le frecce della tastiera
per muoversi attraverso la lista, e la
barra spaziatrice per segnare con un asterisco
il servizio scelto)

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 dall'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 tempo-risultato, 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)

Se 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

Se 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, cioè:

# 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, fare:

ntpq -pn

Se tutto è andato bene, si dovrebbe vedere qualcosa 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 05/12/2007 0630 UTC