NTP (Network Time Protocol, RFC 5905) — протокол синхронизации часов компьютера через интернет. Точность в LAN — микросекунды, через Wi-Fi/интернет — 1-50 ms. Иерархия stratum: stratum 0 = атомные/GPS часы, stratum 1 = сервер, подключённый к нулю, stratum 2 — через stratum 1, и т.д.
Зачем нужно: (1) TLS-сертификаты имеют `notBefore` / `notAfter` — при кривом времени handshake falls, (2) JWT / OAuth — токены имеют exp, кривое время = auth сломан, (3) БД репликация — конфликты по timestamp, (4) логи — корреляция между хостами невозможна без sync, (5) Kerberos — ±5 мин от truth или fails.
Реализации: (1) chrony — стандарт для Linux (Ubuntu, RHEL), быстрее подстраивается при big drift, (2) systemd-timesyncd — легковесный, встроен в systemd (Debian default), (3) ntpd — классика, медленнее адаптируется. Все три работают.
Практика: проверить sync — `chronyc tracking` или `timedatectl` (должно быть `System clock synchronized: yes`). Публичные пулы NTP: `pool.ntp.org`, `time.google.com`, `time.cloudflare.com` (anycast, быстрый). У нас все VPS-образы preconfigured с chrony + Hetzner NTP.