L'ora esatta svolge un ruolo di primo piano in tanti processi di sistema. A tal fine i computer hanno di solito un orologio integrato che spesso comunque si rivela di non essere all'altezza delle richieste avanzate da applicazioni come banca dati. Il modo per ovviare al problema consiste nel regolare continuamente l'orario del sistema locale oppure regolare l'orario tramite la rete. L'ora non dovrebbe venir spostata all'indietro ed i singoli passi nei quali viene spostata in avanti non dovrebbero superare un certo intervallo di tempo. E' relativamente semplice correggere l'ora del sistema con ntpdate, però si ha un salto brusco dell'orario che non tutte le applicazioni riescono a tollerare.
Un approccio di sicuro interesse alla soluzione del problema viene offerto da xntp che permette di correggere l'ora di sistema locale continuamente in base a dei dati di correzione raccolti in precedenza, ricorrere a dei server dell'ora nella rete, oppure come terza possibilitàconsente di amministrare dispositivi che scandiscono l'orario di riferimento locale, come ad esempio orologi a controllo radio.
xntp è preconfigurato in modo che solo l'orario del sistema locale funge da ora di riferimento. Il modo più semplice di utilizzare dei server dell'ora nella rete consiste nell'indicazione dei cosiddetti parametri “server”. Se nella rete vi è un server dell'orario che ad esempio ha il nome di ntp.example.com potete immettere questo server in /etc/ntp.conf nel modo seguente: server ntp.example.com.
Ulteriori server dell'ora si aggiungono immettendo semplicemente ulteriori righe con la parola chiave “server”. Dopo aver inizializzato xntpd con il comando rcxntpd start, passa ca. un'ora prima che l'ora si stabilizza e che viene creato il file “drift” per correggere l'orario del sistema locale. Il file “drift” visto a lungo termine presenta il vantaggio che già dopo aver acceso il computer si sa di quanto devia l'orario di sistema, e si procede immediatamente alla correzione dell'orario per cui si ha una elevata stabilità dell'orario del sistema.
Se nella vostra rete il server dell'ora è indirizzabile anche tramite un broadcast, non avete bisogno del nome del server. Potete configurarlo con il parametro broadcastclient anche nel file di configurazione /etc/ntp.conf. In questo caso si consiglia comunque di configurare un meccanismo di autenticazione, poiché un server dell'ora con degli errori andrebbe ad influire sull'orario del sistema.
xntpd può essere solitamente indirizzato nella rete anche come server dell'ora. Se volete utilizzare xntpd anche tramite broadcast, configurate l'opzione broadcast:
broadcast 192.168.0.255
Chiaramente qui dovete immettere il vostro indirizzo broadcast effettivo. Assicuratevi che il server dell'ora utilizzi effettivamente l'ora esatta. A tal fine si consigliano degli strumenti ad alta precisione per la scansione del tempo (time normals).
Il pacchetto programma xntp contiene anche dei driver che permettono di impostare l'ora di riferimento locale. Gli orologi supportati si trovano nel pacchetto xntp-doc nel file file:/usr/share/doc/packages/xntp-doc/html/refclock.htm. Ogni driver ha un numero. La configurazione di xntp in sé avviene tramite dei cosiddetti pseudo IP. Gli orologi vengono registrati nel file /etc/ntp.conf, come se si trattasse di orologi disponibili nella rete.
A riguardo gli vengono assegnati degli indirizzi IP particolari simili a: 127.127.t.u. Il valore t si ottiene dal file sovramenzionato con l'elenco degli orologi di riferimento. u è il numero di dispositivo che è diverso da 0 solo se utilizzate diversi orologi dello stesso tipo sul vostro sistema. “Type 8 Generic Reference Driver (PARSE) ” avrebbe quindi lo pseudo indirizzo IP 127.127.8.0.
I singoli driver di solito hanno dei parametri speciali che descrivono la configurazione in modo più dettagliata. Nel file file:/usr/share/doc/packages/xntp-doc/html/refclock.htm trovate inoltre per ogni driver un link alla relativa pagina driver che descrive il parametro. Per orologi del “tipo 8” ad esempio è necessario indicare un ulteriore cosiddetto mode che specifica meglio l'orologio. Per esempio il modulo “Conrad DCF77 receiver module” presenta il “mode 5”. Affinché questo orologio sia preso da xntp come riferimento aggiungete inoltre la parola chiave prefer. La riga server completa di un “Conrad DCF77 receiver module” è quindi:
server 127.127.8.0 mode 5 prefer
Per gli altri orologi seguite lo stesso schema. La documentazione su xntp la trovate dopo aver installato il pacchetto xntp-doc nella directory /usr/share/doc/packages/xntp-doc/html.
Accanto alla configurazione manuale di xntp appena descritta, consente di impostare client NTP tramite . Potete scegliere tra configurazione rapida semplice e che descriveremo entrambe nelle sezioni seguenti.
Il processo di configurazione semplice di un client NTP si compone di solo due finestre. Nella prima stabilite il modo di avviamento di xntpd ed il server di riferimento. Per lanciare il demone automaticamente all'avvio del sistema, cliccate sul radio bottone . Per rilevare un server dell'ora appropriato sulla rete, cliccate su e arriverete alla seconda finestra per la selezione del server.
Nella finestra di selezione del server stabilite innanzitutto se preferite una sincronizzazione dell'ora tramite un server della propria rete (radio bottone ) o se debba essere contattato un server dell'ora sull'Internet (radio bottone ). Nel caso di un server dell'ora locale cliccate su per inizializzare una richiesta SLP di server dell'ora disponibili sulla vostra rete. Dall'elenco del risultato selezionate il server adatto e uscite dalla finestra con , e ritornerete nella finestra principale già descritta da cui uscite premendo su , dopo aver verificato che il server selezionato risulta essere raggiungibile tramite . Per selezionare un server dell'ora pubblico, selezionate nella finestra il vostro paese (fuso orario) e dall'elenco risultante il server adatto. Concludete la configurazione con seguito da dopo aver accertato con che il server risulti essere indirizzabile.
Per giungere alla configurazione complessa del client NTP, selezionate nel dialogo iniziale del (si veda la figura Figure 22.35, “: configurazione del client NTP”), dopo avere selezionato il modo di avviamento, come descritto per la configurazione rapida.
Nella finestra determinate se xntpd debba essere lanciato in una chroot jail. In tal modo si incrementa il livello di sicurezza nel caso di attacco tramite xntpd, visto che l'aggressore non potrà compromettere l'intero sistema. Inoltre, tramite potete impostare il client NTP in modo che venga informato sull'elenco dei server NTP disponibili sulla rete tramite DHCP. Nella parte inferiore della finestra vengono elencate le fonti di informazioni da contattare dal client. Potete editare questo elenco tramite , e . Tramite avete modo di visionare i file di log del vostro client o adeguare il firewall (automaticamente) alle impostazioni del client NTP.
Per aggiungere una nuova fonte per quel che riguarda le informazioni sull'ora, cliccate su . Nella finestra successiva, selezionate il tipo di fonte tramite la quale debba realizzarsi la sincronizzazione dell'ora. Potete scegliere tra le seguenti opzioni:
Successivamente selezionate il server NTP (come descritto nella sezione Section 22.12.3.1, “Configurazione rapida di un client NTP”) e abilitate l'opzione per realizzare la sincronizzazione tra server e client durante il boot. Negli altri campi potete indicare ulteriori opzioni per xntpd. Maggiori informazioni sono reperibili sotto /usr/share/doc/packages/xntp-doc.
Se il processo debba avvenire tramite un peer della stessa rete al posto di un server, indicate l'indirizzo del sistema. Per il resto la finestra è identica a quella per il .
Se sul vostro sistema disponete di un dispositivo del genere e intendete utilizzarlo per sincronizzare l'ora, indicate in questa finestra il tipo di orologio, numero e nome di dispositivo nonché ulteriori opzioni. Tramite eseguite la configurazione mirate del rispettivo driver. Informazioni dettagliate sul modo di utilizzare un orologio a controllo radio locale sono reperibili sotto file:///usr/share/doc/packages/xntp-doc/html/refclock.htm.
Informazioni e richieste riguardanti l'ora possono essere inviati anche via broadcast nella rete. Nel presente dialogo indicate gli indirizzi meta per i broadcast. Potete configurare ulteriori opzioni come descritto per /usr/share/doc/packages/xntp-doc .
Se il vostro client debba ottenere le sue informazioni tramite broadcast, inserite nel presente dialog l'indirizzo dal quale accettare i corrispondenti pacchetti. Per maggiori informazioni rimandiamo a /usr/share/doc/packages/xntp-doc.