Hetzner - DokuWiki

Uhrzeit synchronisieren mit NTP

Inhaltsverzeichnis

NTP (Network Time Protocol)

Das NTP Protokoll ist dazu da, um die Zeit auf einem Server mit einem zentralen Zeitserver abzugleichen. In den Hetzner Standardimages ist dies bereits vorkonfiguriert. Hierbei werden die Hetzner NTP Server genutzt.

NTP installieren

Bei einer individuellen Installation ist dies nicht der Fall. Hier muß als erstes der NTP Daemon installiert werden. Dieser ist bei den einzelnen Distributionen schon als Paket vorhanden und kann ganz einfach installiert werden.

  • Debian
debian root # apt-get install ntp
  • Gentoo
emerge ntp
  • OpenSuSS
zypper install ntp

Den NTP Daemon konfigurieren

Seit Januar 2010 bietet Hetzner drei Zeit-Server mit dem NTP-Protokoll an. Diese sind an drei unterschiedlichen Standorten untergebracht und haben folgende Adressen:

  • ntp1.hetzner.de
  • ntp2.hetzner.com
  • ntp3.hetzner.net

Um diese Zeit-Server unter Linux zu verwenden, muss der ntpd entsprechend konfiguriert werden. Bei Debian Linux sind beispielsweise folgende drei Zeilen in die Datei /etc/ntp.conf einzufügen bzw. die bestehenden mit "server" beginnenden Zeilen zu ersetzen:

server  ntp1.hetzner.de  iburst
server  ntp2.hetzner.com iburst
server  ntp3.hetzner.net iburst

Optional können weitere öffentliche Server hinzugefügt werden:

server 0.de.pool.ntp.org
server 1.de.pool.ntp.org
server 2.de.pool.ntp.org
server 3.de.pool.ntp.org

Hier wird bei jedem Start des NTP Dienstes ein beliebiger deutscher Server aus genutzt. Dies stellt sicher, daß die Anfragen über viele Server verteilt werden und erhöht gleichzeitig die Zuverlässigkeit.

Abschliessend muss der ntpd neu gestartet werden.

Absicherung

Da NTP ein UDP-basiertes Protokoll ist, kann es leicht für DDoS-Angriffe mißbraucht werden. Da bei falscher Konfiguration die Antwort größer als die Anfrage ausfällt, wird so ein Angriff verstärkt.

Falls möglich, sollte auf die Version 4.2.7p26 oder höher aktualisiert werden. Andernfalls können mittels noquery alle Statusabfragen unterbunden werden.

Eine entsprechende Konfiguration, welche nur die Hetzner NTP server nutzt, könnte wie folgt aussehen:

restrict    default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery

restrict    127.0.0.1
restrict -6 ::1

server ntp1.hetzner.de iburst
server ntp2.hetzner.de iburst
server ntp3.hetzner.de iburst

Bei dieser Konfiguration sind Veränderungen und Statusabfragen nur noch lokal möglich. Zeitinformationen können mit und von jeder IP aus abgerufen werden.

Alternativ ist es möglich alle Anfragen blockieren und Zeitinformationen nur mit explizit erlaubten Zeitservern auszutauschen. Folgendes Beispiel erlaubt nur den Austausch von Zeitinformationen mit den Hetzner NTP Servern

restrict    default ignore
restrict -6 default ignore

restrict    127.0.0.1
restrict -6 ::1

server ntp1.hetzner.de iburst
restrict    213.239.239.164 nomodify notrap nopeer noquery
restrict -6 2a01:4f8:0:a0a1::2:1 nomodify notrap nopeer noquery

server ntp2.hetzner.de iburst
restrict    213.239.239.165 nomodify notrap nopeer noquery
restrict -6 2a01:4f8:0:a101::2:3 nomodify notrap nopeer noquery

server ntp3.hetzner.de iburst
restrict    213.239.239.166 nomodify notrap nopeer noquery
restrict -6 2a01:4f8:0:a112::2:2 nomodify notrap nopeer noquery

Mit NTP die Zeit manuell synchronisieren

Es kann notwendig sein, dass man einmal nachdem man den NTP Server installiert hat, die Zeit manuell synchronisiert. Dies geht entweder mit ntpd oder mit ntpdate (muss bei Debian Sarge zusätzlich installiert werden):

ntpd -q -g

Die Option -g bedeutet, dass ntpd auch synchronisiert, wenn die Zeit mehr als 1000 Sekunden abweicht. Die Option -q bedeutet, dass ntpd nur einmal ausgeführt wird.

ntpdate NTP-Server
ntpdate ptbtime1.ptb.de

Uhrzeit in Hardwareuhr schreiben

Dann sollte man noch mit

hwclock --systohc

die Uhr in die Hardwareclock schreiben, denn sonst kommt der Server eventuell nach einem Boot mit einer völlig falschen Zeit hoch.



© 2018. Hetzner Online GmbH. Alle Rechte vorbehalten.