3CX V16 - Debian 10 NTP-Server einrichten

- 23.11.2020
von Thomas Windscheif / Microlinc



3CX
Debian
NTP

Das nachfolgende Tutorial beschreibt die Installation eines NTP-Servers unter der 3CX Debian-Installation.

  1. Installation NTP-Paket:
    sudo apt-get install ntp

  2. Anpassung der ntp-Konfiguration für lokalen Zeitserver:
    Öffnen Sie mit einem Editor die ntp.conf-Datei:
    sudo vi /etc/ntp.conf

  3. Kommentiere die pool-Einträge mit # aus und trage stattdessen
    den Server mit FQDN oder IP-Adresse ein, welcher als Zeitgeber verwendet werden soll:
    server "FQDN oder IP-Adresse des Zeitgebers" iburst true prefer

  4. Unter neueren Debian (12)-Versionen werden mindestens 3 Server als Referenz zur Ermittlung der Uhrzeit genutzt, um das Verhalten anzupassen wird in der folgenden Zeile minsane auf 1 konfiguriert:
    tos minclock 4 minsane 1

  5. Mittel Editors die nftables-Rules (Firewall) erweitern (z. B. nach den Regel für SSH Bruetforce blacklist):
    sudo vi /etc/nftables.conf

  6. udp dport {123} counter accept comment "NTP request"
  7. Server neustarten


Für das Troubleshooting kann man in der ntp.conf die folgenden Parameter einfügen:
logconfig =all
logfile /var/log/ntpstats/ntp.log

Nach einem Neustart des Dienstes (systemctl restart ntp) schreibt der Daemon die Logs dann in das File.

Mit ntpstat kann man den Status der Zeitsynchronisierung ermitteln.
Das Paket lässt sich mit sudo apt-get install ntpstat installieren.

ntpstat
gibt dann z. B. folgende Werte zurück:

synchronised to NTP server (176.9.241.107) at stratum 3
time correct to within 208 ms
polling server every 64 s

In diesem Fall wurde erfolgreich mit einem Zeitgeber synchronisiert.

Sollte die Synchronisierung bei starker Abweichung zur Zeitquelle nicht funktionieren, kann man mit den folgenden Befehlen die Synchronisierung erzwingen:
  1. Zunächst wird der laufende NTP-Dienst beendet:
    systemctl stop ntp

  2. Anschließend wird der folgende Befehl eingegeben um die Zeitsynchronisierung synchron anzufordern:
    ntpd -gq
    Die Anwendung beendet sich nach Abschluss der Synchronisierung selbst.

  3. Abschließend wird der NTP-Dienst wieder gestartet:
    systemctl start ntp


Um eine Übersicht über die Peers zu erhalten kann man mit dem Befehl ntpq arbeiten.
  1. Geben Sie ntpq ein.

  2. Geben Sie anschliend "as" ein.

  3. Zum Beenden der Anwendungen geben Sie "quit" ein.



Virtualisierung
Im allgemeinen wird empfohlen die Zeitsynchronisierung durch den Host zu unterbinden.
Unter Hyper-V kann man die Integration einfach "abhaken", unter vmware muss man entsprechende Werte in der VM-Konfiguration setzen (siehe https://kb.vmware.com/s/article/1189)

Um zu prüfen, ob Sie von Clients aus Zeitdaten vom Server erhalten, können Sie unter Windows den folgenden Befehl verwenden:
w32tm /stripchart /computer: /dataonly
oder alternativ den NTP-Client der Firma Galleon Systems verwenden:
https://www.ntp-time-server.com/ntp-server-tool.html

Standardmäßig sind als NTP-Server in der 3CX-Konfiguration die NTP-Pool-Server hinterlegt.
Damit die Endgeräte die 3CX-Instanz als Zeitgeber verwenden, muss der Wert angepasst werden.
Dies wird in der 3CX Managementkonsole unter den Parametern (Settings > Parameters) festgelegt.
Suchen Sie hier nach dem Wert "TIME_NTP_SERVER" und geben Sie die IP-Adresse oder den FQDN des 3CX-Servers an.
MICROL!NC - URL zum Artikel: http://microlinc.homeip.net/index.php?lev1=33&lev2=5&id=426 - Ausdruck vom 24.04.2024