Netzwerkzeitprotokoll (NTP) bietet Unternehmen eine einzigartige Möglichkeit, die Uhren aller Systeme innerhalb des Unternehmens zu synchronisieren. Die Zeitsynchronisierung ist aus vielen Gründen wichtig, von Anwendungszeitstempeln über Sicherheit bis hin zu korrekten Protokolleinträgen.
Wenn die Systeme einer Organisation alle unterschiedliche Uhrzeiten beibehalten, wird es sehr schwierig von a Standpunkt zur Fehlerbehebung, um zu bestimmen, wann und unter welchen Bedingungen ein bestimmtes Ereignis auftreten könnte auftreten.
NTP bietet eine einfache Möglichkeit, sicherzustellen, dass alle Systeme die richtige Zeit beibehalten, was wiederum die Belastung für Administratoren/technischen Support erheblich vereinfachen kann.
NTP arbeitet auf der Prämisse der Synchronisation mit Referenzuhren, auch bekannt als „Schicht 0‘ Server. Alle anderen NTP-Server werden dann basierend darauf, wie weit sie von einem Referenzserver entfernt sind, zu einem untergeordneten Strata-Server.
Der Anfang der NTP-Kette ist a
Schicht 1 Server, der immer direkt mit a. verbunden ist Schicht 0 Referenzuhr. Von hier aus werden untergeordnete Strata-Server über eine Netzwerkverbindung mit einem übergeordneten Strata-Level-Server verbunden.Sehen Sie sich das Diagramm unten für ein klareres Konzept an.
Beim Einrichten von a Schicht 0 oder Schicht 1 Server durchgeführt werden kann, ist dies teuer und daher konzentriert sich dieser Leitfaden auf die Einrichtung von Servern mit niedrigeren Schichten.
Tecmint hat eine grundlegende Host-Konfiguration von NTP unter folgendem Link:
Der Unterschied in diesem Handbuch besteht darin, dass nicht alle Hosts im Netzwerk Anfragen an öffentliche NTP-Server stellen, sondern einen (oder bessere Vorgehensweise, mehrere) Server kontaktieren das öffentliche NTP-System und stellen dann allen Hosts innerhalb des lokalen Zeit zur Verfügung Netzwerk.
Ein interner NTP-Server ist oft ideal, um Netzwerkbandbreite zu sparen und durch NTP-Einschränkungen und Kryptographie eine gewisse erhöhte Sicherheit zu bieten. Um zu sehen, wie sich dies vom ersten Diagramm unterscheidet, sehen Sie sich das zweite Diagramm unten an.
1. Der erste Schritt zum Einrichten einer internen NTP-Struktur ist die Installation der NTP-Serversoftware. Das Softwarepaket in Debian namens ‘NTP‘ enthält derzeit alle Server-Dienstprogramme, die zum Einrichten einer NTP-Hierarchie erforderlich sind. Wie bei allen Tutorials zur Systemkonfiguration, Wurzel oder sudo Zugang vorausgesetzt.
# apt-get install ntp. # dpkg --get-selections ntp [Kann verwendet werden, um zu bestätigen, dass NTP installiert ist] # dpkg -s ntp [Kann auch verwendet werden, um zu bestätigen, dass NTP installiert ist]
2. Sobald NTP installiert ist, ist es an der Zeit zu konfigurieren, welche höheren Stratum-Server nach Zeit abgefragt werden sollen. Die Konfigurationsdatei für NTP wird unter ‘/etc/ntp.conf
‘ und kann mit jedem Texteditor geändert werden. Diese Datei enthält die vollständig qualifizierten Domänennamen der Server der höheren Ebene, die für diesen NTP-Server festgelegten Einschränkungen und alle anderen speziellen Parameter für Hosts, die diesen NTP-Server abfragen.
Um den Konfigurationsprozess zu starten, müssen die übergeordneten Server konfiguriert werden. Debian fügt standardmäßig den Debian-NTP-Pool in die Konfigurationsdatei ein. Diese sind für die meisten Zwecke in Ordnung, aber ein Administrator kann besuchen NIST bestimmte Server anzugeben oder alle Server von NIST im Round-Robin-Verfahren zu verwenden (empfohlene Methode von NIST).
Für dieses Tutorial werden bestimmte Server konfiguriert. Die Konfigurationsdatei ist in einige Hauptabschnitte unterteilt und standardmäßig für IPv4 und IPv6 konfiguriert (Wenn Sie IPv6 deaktivieren möchten, wird dies später erwähnt). Um den Konfigurationsprozess zu starten, muss die Konfigurationsdatei mit einem Texteditor geöffnet werden.
# nano /etc/ntp.conf.
Die ersten Abschnitte (Driftdatei, Statistikdir, und Statistiken) sind in Ordnung auf die Standardeinstellungen. Der nächste Abschnitt enthält die Server der höheren Ebene, über die dieser Server Zeit anfordern soll. Die Syntax für jeden Servereintrag ist sehr einfach:
Serverserver time.nist.gov iburst â [Beispieleintrag]
Normalerweise ist es eine gute Idee, mehrere Server höherer Schichten zur Auswahl in dieser Liste zu haben. Dieser Server fragt alle Server in der Liste ab, um festzustellen, welcher der zuverlässigste ist. Die Server für dieses Beispiel wurden bezogen von: http://tf.nist.gov/tf-cgi/servers.cgi.
3. Der nächste Schritt besteht darin, NTP-Einschränkungen zu konfigurieren. Diese sind es gewohnt, ermöglichen oder verbieten Hosts, um mit dem NTP-Server zu interagieren. Die Standardeinstellung für NTP ist die Bereitstellungszeit für jeden, aber die Konfiguration sowohl für IPv4- als auch für IPv6-Verbindungen ist nicht zulässig.
Dieser Server wird derzeit nur in einem IPv4-Netzwerk verwendet, daher wurde IPv6 auf zwei Arten deaktiviert. Das erste, was zum Deaktivieren von IPv6 auf dem NTP-Server getan wurde, bestand darin, die Standardeinstellungen zu ändern, die der Daemon startet. Dies wurde erreicht, indem die Zeile in ‘/etc/default/ntp
‘.
# nano /etc/default/ntp.
NTPD_OPTS='-4 -g' [Hinzufügen des ' -4 ' an diese Zeile, um NTPD anzuweisen, nur IPv4 abzuhören.
Zurück in die Hauptkonfigurationsdatei (/etc/ntp.conf
), wird der NTP-Daemon automatisch so konfiguriert, dass er die Zeit mit allen IPv4/6-Hosts teilt, die Konfiguration jedoch nicht zulässt. Dies ist an den folgenden zwei Zeilen zu erkennen:
NTPD arbeitet auf einer erlaubten Basis, es sei denn, sie wird abgelehnt. Da IPv6 deaktiviert war, wurde die ‘einschränken -6
‘ Zeile kann mit ‘ entfernt oder auskommentiert werden #
Dies ändert das Standardverhalten für NTP, um alle Nachrichten zu ignorieren. Dies mag seltsam erscheinen, aber lesen Sie weiter, da Beschränkungsklauseln verwendet werden, um den Zugriff auf diesen NTP-Server für die Hosts, die Zugriff benötigen, zu optimieren.
Nun muss der Server wissen, wer den Server nach der Uhrzeit abfragen darf und was er sonst noch mit dem NTP-Server machen darf. Für diesen Server ist ein privates Netzwerk von 172.27.0.0/16 wird verwendet, um die Zeilengruppe einschränken zu erstellen.
Diese Zeile teilt dem Server mit, dass er jeden Host vom 172.27.0.0/16 Netzwerk, um zeitweise auf den Server zuzugreifen. Die Parameter nach der Maske helfen zu steuern, was jeder der Hosts in diesem Netzwerk tun kann, wenn er den Server abfragt. Nehmen wir uns einen Moment Zeit, um jede dieser Einschränkungsoptionen zu verstehen: