So installieren Sie NTP-Server und Client(s) unter Ubuntu 20.04 LTS

NTP oder Network Time Protocol ist ein Protokoll, das verwendet wird, um alle Systemuhren in einem Netzwerk zu synchronisieren, um dieselbe Zeit zu verwenden. Wenn wir den Begriff NTP verwenden, beziehen wir uns auf das Protokoll selbst und auch auf die Client- und Serverprogramme, die auf den vernetzten Computern laufen. NTP gehört zur traditionellen TCP/IP-Protokollsuite und kann leicht als einer der ältesten Teile eingestuft werden.

Wenn Sie die Uhr zum ersten Mal einrichten, dauert es sechs Mal innerhalb von 5 bis 10 Minuten, bis die Uhr eingerichtet ist. Sobald die Uhren in einem Netzwerk synchronisiert sind, aktualisieren die Clients ihre Uhren alle 10 Minuten mit dem Server. Dies geschieht in der Regel durch einen einzigen Nachrichtenaustausch (Transaktion). Diese Transaktionen verwenden die Portnummer 123 Ihres Systems.

In diesem Artikel beschreiben wir Schritt für Schritt, wie Sie:

  • Installieren und konfigurieren Sie den NTP-Server auf einem Ubuntu-Computer.
  • Konfigurieren Sie den NTP-Client so, dass er mit dem Server zeitsynchronisiert wird.

Wir haben die in diesem Artikel erwähnten Befehle und Prozeduren auf einem Ubuntu 20.04 LTS-System ausgeführt.

Installieren und konfigurieren Sie den NTP-Server auf dem Host-Computer

Befolgen Sie diese Schritte, um den NTP-Server auf Ihrem Host-Ubuntu-Computer zu installieren:

Hinweis: Wir verwenden die Ubuntu-Befehlszeile, das Terminal, um NTP zu installieren und zu konfigurieren. Sie können die Terminal-Anwendung entweder über die Suche im Anwendungs-Launcher oder die Tastenkombination Strg+Alt+T öffnen.

Schritt 1: Repository-Index aktualisieren

Um die neueste verfügbare Version der Software aus den Internet-Repositorys zu installieren, muss Ihr lokaler Repository-Index mit diesen übereinstimmen. Führen Sie den folgenden Befehl aus als sudo um Ihren lokalen Repository-Index zu aktualisieren:

$ sudo apt-get-Update

Schritt 2: NTP-Server mit apt-get installieren

Bitte führen Sie den folgenden Befehl aus als sudo um den NTP-Server-Daemon aus den APT-Repositorys zu installieren:

$ sudo apt-get install ntp

Bitte beachten Sie, dass nur ein autorisierter Benutzer Software auf Ubuntu hinzufügen, entfernen und konfigurieren kann.

Das System fragt Sie möglicherweise nach dem Passwort sudo und bieten Ihnen auch eine J/N-Option, um die Installation fortzusetzen. Enter Y und dann Enter drücken; Der NTP-Server wird dann auf Ihrem System installiert. Der Vorgang kann jedoch je nach Internetgeschwindigkeit einige Zeit in Anspruch nehmen.

Schritt 3: Installation überprüfen (optional)

Sie können Ihre NTP-Installation überprüfen und auch die Versionsnummer überprüfen, indem Sie den folgenden Befehl in Ihrem Terminal ausführen:

$ sntp –version

Überprüfen Sie die NTP-Serverversion

Schritt 4: Wechseln Sie zu einem NTP-Serverpool, der Ihrem Standort am nächsten ist

Wenn Sie den NTP-Server installieren, wird er meistens so konfiguriert, dass er die richtige Zeit abruft. Sie können jedoch den Serverpool zu einem Serverpool wechseln, der Ihrem Standort am nächsten ist. Dazu gehören einige Änderungen in der Datei /etc/ntp.conf.

Öffnen Sie die Datei im Nano-Editor als sudo indem Sie den folgenden Befehl ausführen:

$ sudo nano /etc/ntp.conf

Öffnen Sie die Datei ntp.conf in einem Editor

In dieser Datei sehen Sie eine Poolliste. Diese Liste haben wir im obigen Bild hervorgehoben. Die Aufgabe hier besteht darin, diese Poolliste durch einen Pool von Zeitservern zu ersetzen, der Ihrem Standort am nächsten ist. Das Projekt pol.ntp.org bietet einen zuverlässigen NTP-Dienst von einem großen Cluster von Zeitservern. Um eine Poolliste entsprechend Ihrem Standort auszuwählen, besuchen Sie die folgende Seite:

https://support.ntp.org/bin/view/Servers/NTPPoolServers

Wir haben nach einer Poolliste für die USA gesucht:

Wählen Sie NTP-Pool-Server

Die Seite weist uns an, der Datei ntp.conf die folgenden Zeilen hinzuzufügen:

Server 0.us.pool.ntp.org Server 1.us.pool.ntp.org Server 2.us.pool.ntp.org Server 3.us.pool.ntp.org

So sieht meine Datei aus, nachdem ich die obigen Zeilen hinzugefügt habe:

Poolserver in der Datei ntp.conf hinzufügen

Beenden Sie die Datei, indem Sie Strg+X drücken und dann y eingeben, um die Änderungen zu speichern.

Schritt 5: Starten Sie den NTP-Server neu

Damit die oben genannten Änderungen wirksam werden, müssen Sie den NTP-Server neu starten. Führen Sie den folgenden Befehl aus als sudo um das zu tun:

$ sudo Dienst ntp neu starten

Schritt 6: Überprüfen Sie, ob der NTP-Server ausgeführt wird

Überprüfen Sie nun den Status des NTP-Dienstes mit dem folgenden Befehl:

$ sudo Dienst-NTP-Status

Überprüfen Sie den NTP-Serverstatus

Der Status Aktiv bestätigt, dass Ihr NTP-Server betriebsbereit ist.

Schritt 7: Firewall so konfigurieren, dass Client(s) auf den NTP-Server zugreifen können

Schließlich ist es an der Zeit, die UFW-Firewall Ihres Systems so zu konfigurieren, dass eingehende Verbindungen auf den NTP-Server unter UDP-Portnummer 123 zugreifen können.

Führen Sie den folgenden Befehl aus als sudo um Port 123 für eingehenden Verkehr zu öffnen:

$ sudo ufw erlauben von jedem zu jedem Port 123 proto udp

Konfigurieren Sie die Firewall, um Zugriff auf den NTP-Server zu gewähren

Ihr Ubuntu-Hostcomputer ist jetzt für die Verwendung als NTP-Server konfiguriert.

Konfigurieren Sie den NTP-Client für die Zeitsynchronisierung mit dem NTP-Server

Lassen Sie uns nun unseren Ubuntu-Client-Rechner so konfigurieren, dass er mit dem NTP-Server zeitsynchronisiert ist.

Schritt 1: Installieren Sie ntpdate

Mit dem Befehl ntpdate können Sie Ihre Verbindungskonfiguration mit dem NTP-Server manuell überprüfen. Öffnen Sie die Terminal-Anwendung auf dem Client-Rechner und geben Sie den folgenden Befehl ein als sudo:

$ sudo apt-get install ntpdate

Installieren Sie das ntpdate-Programm

Schritt 2: Geben Sie die IP und den Hostnamen des NTP-Servers in der Hosts-Datei an

Damit Ihr NTP-Server von einem Hostnamen auf Ihrem Client-Rechner aufgelöst wird, müssen Sie Ihre /etc/hosts-Datei konfigurieren.

Öffnen Sie die Hosts-Datei als sudo im Nano-Editor durch Eingabe des folgenden Befehls:

$ sudo nano /etc/hosts

Fügen Sie nun die IP Ihres NTP-Servers hinzu und geben Sie einen Hostnamen wie folgt in dieser Datei an:

Beenden Sie die Datei mit Strg+X und speichern Sie sie durch Eingabe von y.

Schritt 3: Überprüfen Sie, ob die Uhrzeit des Client-Rechners mit dem NTP-Server synchronisiert ist

Mit dem folgenden ntpdate-Befehl können Sie manuell überprüfen, ob die Zeit zwischen den Client- und Serversystemen synchronisiert ist:

$ sudo ntpdate NTP-Server-Host

Die Ausgabe sollte idealerweise einen Zeitversatz zwischen den beiden Systemen aufweisen.

Schritt 4: Deaktivieren Sie den systemd timesyncd-Dienst auf dem Client

Da wir möchten, dass unser Client die Zeit mit dem NTP-Server synchronisiert, deaktivieren wir den timesyncd-Dienst auf dem Client-Rechner.

Enter den folgenden Befehl dazu:

Zeitsynchronisation deaktivieren

Schritt 5: Installieren Sie NTP auf Ihrem Client

Führen Sie den folgenden Befehl aus als sudo um NTP auf Ihrem Client-Rechner zu installieren:

$ sudo apt-get install ntp

Schritt 6: Konfigurieren Sie die Datei /etc/ntp.conf, um Ihren NTP-Server als neuen Zeitserver hinzuzufügen

Jetzt möchten wir, dass unser Client-Rechner unseren eigenen NTP-Hostserver verwendet, der als Standardzeitserver verwendet wird. Dazu müssen wir die Datei /etc/ntp.conf auf dem Client-Rechner bearbeiten.

Führen Sie den folgenden Befehl aus als sudo um die Datei im Nano-Editor zu öffnen:

$ sudo nano /etc/ntp.conf

Fügen Sie dann die folgende Zeile in die Datei ein, wobei NTP-Server-Host der Hostname ist, den Sie für Ihren NTP-Server angegeben haben:

Server NTP-Server-Host bevorzugt iburst

So sieht meine Datei aus, nachdem ich den Zeitserver angegeben habe:

NTP-Server zur Datei ntp.conf hinzufügen

Drücken Sie Strg+x, um die Datei zu schließen und geben Sie dann y ein, um die Änderungen zu speichern.

Schritt 7: Starten Sie den NTP-Server neu

Damit die oben genannten Änderungen wirksam werden, müssen Sie den NTP-Dienst neu starten. Führen Sie den folgenden Befehl aus als sudo um das zu tun:

$ sudo Dienst ntp neu starten

Schritt 8: Anzeigen der Zeitsynchronisierungswarteschlange

Jetzt sind Ihre Client- und Servercomputer für die Zeitsynchronisierung konfiguriert. Sie können die Zeitsynchronisierungswarteschlange anzeigen, indem Sie den folgenden Befehl ausführen:

$ntpq -ps

Sie sollten NTP-server-host als Host/Quelle der Zeitsynchronisierung in der Warteschlange sehen können.

Dies war also alles, was Sie über die Installation und Konfiguration von NTP wissen mussten, um die Zeit auf Ihren vernetzten Ubuntu-Computern zu synchronisieren. Der Vorgang mag etwas umständlich erscheinen, aber wenn Sie alle oben genannten Schritte nacheinander sorgfältig befolgen, werden Ihre Maschinen in kürzester Zeit synchronisiert.