Setup des Zeitservers

In der Konsole als root

apt-cache search ntp
apt-get update && apt-get install  ntp ntp-doc
update-rc.d -f ntp defaults
run update-rc.d later,after doing some configgering

Wo die Dokumente auf dem System sind:

/usr/share/doc/ntp-doc/html/index.html 
and bookmark it!

Dies ist eine umfassende Dokumentation, und nicht alle Elemente dieser Dokumentation müssen für die aktuelle Aufgabenstellung relevant sein.

ntp ist erst nach einem Reboot aktiviert, aber die Zeit sollte schon vor dem Reboot so genau wie möglich gestellt werden.

ntp läuft als Dienst und ntpdate ist bereits auf sidux vorhanden. Ob ntp bereits aktiviert ist, kann auf folgende Weise geprüft werden:

sux
rcconf
(use the arrow keys on your keyboard
to move through the list, and the
space-bar to place an * to choose the
service)

ntp erhält das Zeitsignal von einem der in /etc/ntp.conf gelisteten Server. Diese Datei kann editiert werden.

Sowohl ntpdate als auch der ntpd-Daemon [kurz: ntp] prüfen die Liste der Zeitserver in /etc/ntp.conf beginnend mit dem ersten Eintrag. Hier eine Beispielliste:

# 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

Der erste Eintrag ist ein anderer Computer im Netzwerk, welcher gleichfalls ntp laufen hat. The first one is the other box on the same network, also running ntp [die IP des Servers hier ist 192.168.3.1']

Der zweite Eintrag ist der Zeitserver des Internetproviders (ISP), mit dem dieser Computer verbunden ist (hier: blueyonder.co.uk).

Die nächsten Einträge sind von uk.pool.ntp.org, daran anschließen einige Zeitserver eines europäischen Pools. In der Regel sind die ISP-Namenserver (isp-nameservers) oft auch Zeitserver. Dies kann man prüfen mit:

ntpdate -v

Dieser Befehl ändert noch nichts in der Zeiteinstellung, sondern gibt die Zeit dieses Servers aus, was in etwa wie folgt aussieht:

# 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)

Danach muss die Berechtigung zum Zugriff auf die lokalen PCs gesetzt werden, falls dies gewünscht ist:

# Lokale Nutzer können den NTP-Server abfragen.
restrict 127.0.0.1 nomodify
restrict 192.168.24

Aktivierung des Zeitservers:

# Zur Aktivierung des Zeitservers im lokalen Subnetz wird die folgende Zeile abgeändert:
# (Beachte, die Adresse ist nur ein Beispiel. Bitte ans eigene Netz anpassen!))
broadcast 192.168.3.255

Die Datei /etc/ntp.conf mag eigenartig erscheinen, da sie vom System wie eine diff-Datei angesehen wird (sobald auf sie auch nur geklickt wird). Daher muss ntp gestartet werden, bevor die Zeit gesetzt wird. Konkret bedeutet dies an einem Beispiel:

# 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

Im Anschluss daran wird ntp als Dienst gestartet, um den Zeitserver nach jedem (Re-)Boot aktiviert zu haben. Zum Testen wird folgender Befehl ausgeführt:

ntpq -pn

Wenn die Einstellung korrekt erfolgte, sollte der Befehl eine Liste ähnlich der folgenden ausgeben:

# 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

Der Stern (*) in der dritten Zeile in diesem Beispiel (*82.219.3.1) zeigt den aktiven Zeitserver, welcher vom System als geeignetster angesehen wird. Er setzt die Zeit unter Nutzung von Port 123. Beispiel einer iptables-Zeile ist:

# 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