[[oktatas:linux|< Linux]] ====== NTP szerver, kliens ====== * **Szerző:** Sallai András * Copyright (c) 2011, Sallai András * Szerkesztve: 2011, 2013, 2018, 2020, 2023 * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]] * Web: https://szit.hu ===== Bevezetés ===== Az NTP a Network Time Protocol rövidítése. A pontos idő szolgáltatására használható. Protokollok: * TP * SNTP * NTP Régebben a TP protokollt használtuk TCP felett, amelyet a [[http://tools.ietf.org/html/rfc868|RFC 868]] ír le. Ma már SNTP protokollt használjuk UDP felett, amelyet a [[http://tools.ietf.org/html/rfc2030|RFC 2030]] ír le. Az [[https://tools.ietf.org/html/rfc5905|RFC 5905]], már NTP néven említi a protokollt. Az NTP szerverek az egyezményes koordinált világidőt szolgáltatják. A szolgáltatás mást nem tartalmaz, de korrigálja a szökő másodperceket. ===== Systemd ===== A **Debian GNU/Linux 12**-ben a **timesyncd** egyes felhasználóknál hibával dolgozik. Ha ez fennáll érdemes más időszinkronizáló démont használni. A systemd előretörésével, az időszinkronizálást is átvette. Konfigurálás: /etc/systemd/timesyncd.conf Szinkronizálások lekérdezése: journalctl -u systemd-timesyncd Státusz: timedatectl status Bőbeszédű státusz: timedatectl timesync-status Engedélyezés: timedatectl set-ntp true Vezérlés: systemctl enable systemd-timesyncd.service systemctl disable systemd-timesyncd.service ===== Szerver ===== ==== Telepítés ==== apt install ntp Ezzel készen van. Az ntp csomaggal a következő parancsok lesznek elérhetők: * /usr/bin/ntpdc, /usr/bin/ntpq, /usr/bin/ntpsweep, /usr/bin/ntptrace, /usr/bin/sntp. * /usr/sbin/ntp-keygen, /usr/sbin/ntp-wait, /usr/sbin/ntpd, /usr/sbin/ntptime ==== Ellenőrzés ==== ps ax pstree ss -lu A szerverek és társaik (peer-ek) állapotának ellenőrzése: ntpq -p A kimenet hasonló lehet: ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== 0.debian.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000 1.debian.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000 2.debian.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000 3.debian.pool.n .POOL. 16 p - 64 0 0.000 0.000 0.000 +inspektor-vlan1 228.143.95.23 2 u 60 1024 377 17.787 5.473 0.813 +prae.hu 193.225.118.163 3 u 65 1024 377 14.608 5.148 1.150 +loginnode.szege 195.111.107.122 2 u 131 1024 377 15.306 4.653 1.342 -headnode.szeged 195.111.107.122 2 u 191 1024 377 15.670 3.737 0.816 +visual-vlan196. 193.225.55.3 2 u 325 1024 377 16.068 4.104 1.226 +yikes.bl2.tolna 136.160.114.253 3 u 88 1024 377 19.644 4.544 2.853 *smn.miskolc.hpc 228.143.95.23 2 u 118 512 377 15.895 5.157 2.224 +ntp2.niif.hu 195.111.107.122 2 u 168 1024 377 12.011 4.410 1.111 +84.2.46.19 150.254.183.15 4 u 263 512 377 13.657 5.161 2.421 #admin2.debrecen 228.143.95.23 2 u 234 1024 377 15.949 3.757 1.539 #quaen.fradi.hu 193.225.50.69 3 u 232 512 377 12.028 4.006 2.134 #mail.deployis.e 183.32.67.192 3 u 309 512 377 12.522 3.450 1.255 +bakacsin1.ki.ii 121.131.112.137 2 u 66 1024 277 13.260 5.195 1.696 #hazmester-vlan1 121.131.112.137 2 u 298 512 377 11.319 4.066 2.193 ==== Beállítások ==== Korlátozhatjuk az ntp szerver használhatóságát alhálózatokra. Legyen például egy ilyen hálózatunk: 192.168.123.0 Maszk: 255.255.255.0 Csak ezen a hálózaton szeretnénk szolgáltatni a ntp-t, ekkor a szerkesszük az ntp.conf állományt: mcedit /etc/ntp.conf Állítsunk be egy ilyen sort: restrict 192.168.123.0 mask 255.255.255.0 notrust ===== Tűzfal ===== A tűzfalon az UDP **123** portot kell engedélyezni. Az időkiszolgáló démonok ezen a porton fogadják kéréseket, a kliensek ezen a proton kérik le. ===== Kliens ===== Több lehetőségünk is van: ==== ntpdate ==== Telepítünk egy klienst: apt install ntpdate Az ntpdate csomag az időlekérdezést automatizálja, néhány eseményhez kötve. A hálózati kártya felhúzásakor és a DHCP információk lekérésekor is lekérdezi az időt. Kérdezzük le az időt: /usr/sbin/ntpdate Beállítjuk az időzítést: crontab -e 0 0 * * * /usr/sbin/ntpdate time.kfki.hu ==== rdate ==== Az rdate nem tartalmaz időkiszolgáló démont, csak egy kliens, amivel lekérdezhetünk ilyen démonokat. apt install rdate rdate -n time.kfki.hu Ha telepítve van a ntpd akkor helyben: rdate -n localhost Időzítem: crontab -e ===== ntpsec ===== Időprotokoll démon: apt install ntpsec Telepítés után, automatikusan elindul és UDP 123-porton várja a kéréseket. Ellenőrizzük: ss -lu vagy: ss -lun Az /etc/ntpsec/ntp.conf állományban találjuk a beállításokat. Itt vannak beállítva az alapértelmezett időkiszolgálók: * 0.debian.pool.ntp.org * 1.debian.pool.ntp.org * 2.debian.pool.ntp.org * 3.debian.pool.ntp.org ===== Irodalom ===== * https://wiki.debian.org/NTP * https://linuxconfig.org/how-to-setup-ntp-server-and-client-on-debian-9-stretch-linux