NTP Network Time Protocol

Manuelle Synchronisation

Die manuelle Synchronisation unter Linux erfolgt über ntpdate. Dementsprechend muss dieses Paket überhaupt erst einmal installiert werden. Danach kann über

ntpdate <server>

seine eigene Computer-Zeit mit der des angegebenen Servers einmalig abgleichen. Falls bereits ein NTP-Daemon läuft, muss der vorher angehalten werden.

Unter Windows kann man seine Zeit über die Kommandozeile einmalig wie folgt abgleichen:

net time \\<server>

Automatische Synchronisation

Soll die Zeit automatisch und regelmäßig abgeglichen werden, muss ein entsprechender Dienst laufen.

Unter Linux installiert man dafür das Paket ntp, dass einen NTP-Daemon enthält. Dieser wird über die Datei /etc/ntp.conf konfiguriert und enthält bereits einige Server, die sich je nach OS unterscheiden. Hier ein Beispiel für Debian:

# pool.ntp.org maps to about 1000 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.html>
server 0.debian.pool.ntp.org iburst
server 1.debian.pool.ntp.org iburst
server 2.debian.pool.ntp.org iburst
server 3.debian.pool.ntp.org iburst

Mit einer weiteren Zeile „server <Eigener Zeitserver>“ kann man eigene Zeitserver hinzufügen oder die vorhanden ersetzen.

Damit der Dienst nur als NTP-Client läuft, sollten Zugriffe von außen nicht zugelassen werden:

# Local users may interrogate the ntp server more closely.
restrict 127.0.0.1
restrict ::1

Unter Windows wird die Zeit automatisch aktualisiert. Standardmäßig mit dem Server „time.windows.com“. Wer hier einen eigenen Server einstellen möchte kann dies unter Windows 7 (auch Server 2008 R2) über die Systemsteuerung -> „Datum und Uhrzeit“ -> Register „Internetzeit“ -> „Mit einem Internetzeitserver synchronisieren“ -> „Server:“ einstellen. Der eigene Server ist manuell in dem Auswahlfeld einzugeben.

Eigenen Zeitserver unter Linux einrichten

Da der Linux NTP-Daemon ntpd sowieso läuft, kann man ihn für sein eigenes Netz auch als Zeitserver freigeben. Dazu müssen nur der Zugriff auf den Zeitserver aus dem lokalen Subnetz (hier 192.168.1.0) freigegeben werden:

# erlaubt lesenden Zugriff im lokalen Netz 192.186.1.0/24
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

Wer eine Firewall auf seinem Rechner betreibt, muss dafür noch den UDP-Port 123 freigeben. Bei IP-Tables sieht das wie folgt aus:

iptables -A INPUT -p udp --dport 123 -s 192.168.1.0/24 -j ACCEPT