NTP

Aus folgenden Gründen müssen alle Server immer mit der richtigen Uhrzeit laufen:

  • Wenn Daten von einer Maschine zu einer anderen Maschine kopiert werden, müssen die Zeitstempel richtig gesetzt werden., damit nachvollziehbar bleibt, welche Datei wie kopiert worden ist.
  • Log-Dateien müssen exakte Zeitstempel enthalten, um kritische Ereignisse oder unbefugte Zugangsversuche richtig zu protokollieren.
  • Backup-Programme benötigen richtige Zeitstempel, um festzustellen, welche Dateien zu sichern sind und welche Dateien beim Wiederherstellen von Dateien überschrieben werden können.

Der xntp-Dämon ist die erste Wahl auf einer Linux-Maschine, wenn es darum geht, die Uhrzeit zu synchronisieren. Auch der Caipirinha-Server wird über das ntp-Protokoll synchronisiert, allerdings lediglich mit Stratum 2-Maschinen. Eine noch genauere Synchronisation mit Stratum 1-Maschinen ist bei dieser Maschine nicht erforderlich. Auf [1] gibt es ausführliche Informationen über ntp. Es gibt zahlreiche Listen von NTP-Servern im Internet, beispielsweise auf [2].

Um ntp in Betrieb zu nehmen, müssen folgende Pakete installiert werden:

  • xntp
  • xntp-doc
  • yast2-ntp-client.

Dann wird die Konfigurationsdatei /etc/ntp.conf beispielsweise so angepasst:

##
## Undisciplined Local Clock. This is a fake driver intended for backup
## and when no outside source of synchronized time is available.
##
server 127.127.1.0 # local clock (LCL)
fudge  127.127.1.0 stratum 10 # LCL is unsynchronized

driftfile /var/lib/ntp/drift/ntp.drift # path for drift file
logfile   /var/log/ntp
pidfile   /var/run/ntp.pid

##
## Stratum 2 Servers
##
## Universität Augsburg, Deutschland
server tock.fh-augsburg.de             burst
## Observatoire de Paris-Meudon, Frankreich
server ntp.obspm.fr                    burst
## Université de Lyon, Frankreich
server ntp.univ-lyon1.fr               burst
## Instituto Nazionale di Ricerca Metrologica, Torino, IT
server ntp2.ien.it                     burst
## Universität Oslo, Oslo, Norwegen
server fartein.ifi.uio.no              burst
## Bundesamt für Metrologie, Bern, Schweiz
server ntp.metas.ch                    burst
## JANET, Oxfordshire, UK
server ntp2.ja.net                     burst
## Hurricane Electric, San José USA
server clock.sjc.he.net                burst
## Penn State University, USA
server clock.psu.edu                   burst

#
# Authentication stuff
#
keys /etc/ntp.keys              # path for keys file
trustedkey 1                    # define trusted keys
requestkey 1                    # key (7) for accessing server variables
# controlkey 15                 # key (6) for accessing server variables

Seit der Installation von openSuSE 11.2 in der 64-Bit-Version muss ich auf meinem Server übrigens die burst-Anweisung anfügen.

Nachdem die Konfigurationsdatei geändert worden ist, kann der xntp-Dämon mit
/etc/init.d/ntp start aktiviert werden. Nun muss noch dafür Sorge getragen werden, dass xntpd automatisch in den Runleveln (2), 3 und 5 gestartet wird. Dazu markiert man die entsprechenden Felder im Runlevel-Editor in YaST2.

Im abgeglichenen Zustand synchronisiert sich die Uhr des Servers mit den in der Konfigurationsdatei angegebenen NTP-Servern. Ein als root ausgeführtes ntpq -p liefert dann eine Zustandsübersicht über die NTP-Server und zeigt, welcher aktuell als bevorzugter Server gehandelt wird. Die hier wiedergegebene Übersicht stellt eine Momentaufnahme dar.

     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 LOCAL(0)        .LOCL.          10 l   27   64  377    0.000    0.000   0.001
+tock.Informatik 130.149.17.8     2 u   37  512  377  1076.41  -122.51 155.128
*syrte8.obspm.fr 193.52.184.106   2 u   56  512  373  1091.48  -117.02 104.343
-dns.univ-lyon1. 195.220.94.163   2 u  186  512  377  568.388  -376.20 117.041
-ntp2.inrim.it   .CTD.            1 u  141  512  377  876.775  -208.80 304.832
+fartein.ifi.uio 195.220.94.163   2 u  133  512  177  1136.97  -91.214 128.396
-metasweb01.admi .HBGs.           1 u   24  512  377  1149.98  -90.779 155.105
-ntp2.ja.net     .MSF.            1 u   68  512  377  1299.53  -12.322  19.994
-clock.sjc.he.ne .CDMA.           1 u   31  512  377  1766.43  147.929  13.677
-otc2.psu.edu    128.118.2.33     2 u   32  512  377  1390.44  -31.032  48.572

Ab und zu sollte man sich als verantwortlicher Administrator die Datei /var/log/ntp anschauen. Dort sollten dann lediglich Einträge wie diese zu finden sein:

24 Jun 16:47:37 ntpd[3374]: synchronized to 193.204.114.233, stratum 1
24 Jun 16:49:47 ntpd[3374]: synchronized to 193.62.22.98, stratum 1
24 Jun 16:52:58 ntpd[3374]: synchronized to 216.218.254.202, stratum 1
24 Jun 16:53:14 ntpd[3374]: synchronized to 162.23.41.34, stratum 1
24 Jun 16:53:49 ntpd[3374]: synchronized to 193.62.22.98, stratum 1
24 Jun 16:55:09 ntpd[3374]: synchronized to 193.204.114.233, stratum 1
24 Jun 16:55:42 ntpd[3374]: synchronized to 162.23.41.34, stratum 1
24 Jun 16:57:29 ntpd[3374]: synchronized to 193.204.114.233, stratum 1
Posted on: 2010-06-24Gabriel Rüeck