Před nějakým časem jsem používal i ntpd, pak jsem se vrátil k ntpdate. Proč? Důvodů je několik.
Zaprvé - existuje strašně moc nepojmenovaných implementací ntpd, nenašel jsem tedy žádný relevantní manuál ke konfiguráku, direktivy z manuálových stránek na webu nefungovaly a prakticky jediné, co se mi povedlo rozchodit, je jednoduchý sync s výchozím nastavením.
Tím chci naznačit, že třeba ACL nebo jakýkoli systém přidělování práv "kdo smí můj ntpd použít pro synchronizaci" prakticky neexistuje na systémové úrovni. Ntpd si myslí, že je pánem světa (a systému) a nenechá si vnutit ani adresu, na které naslouchat, ani interface, na který se bindnout. Od admina se očekává, že prostě přístupy nastaví v ntpd.conf, tudíž jedinou jeho záchranou je netfilter, který, díkybohu, ntpd obejít neumí.
S tím souvisí i rozsáhlé "zaprasení" otevřenými listen sockety, v podobném stylu, jako to dělá postfix s unix sockety.
Velice rád přemigruji všude na nějakou jednoduchou implementaci ntpd, která bude jednoduchostí použití připomínat ntpdate a nebude se snažit o ovládnutí systému.
Jen pro doplnění, abych ušetřil některým snahy o opravy.
Config direktiva "listen on" (jakou je možné najít v BSD manuálech pro ntpd na webu) nefunguje.
Na Debianu Squeeze (resp. současné zmražené verzi) nefunguje ani parametr "-I" u ntpd - "Listen on an interface name or address". Adresu to úplně ignoruje, jméno interface sice uřízne explicitní naslouchání na každém interface zvlášť, ale ti chytřejší si (vedle bindů podle zvoleného interface) všimnou i listen na 0.0.0.0 (tedy INADDR_ANY). Nevím, jestli je to bug nebo nějaký prapodivný záměr.
Na další pokusy si teď z hlavy nevzpomenu, experimentoval jsem s tím na Lennym před pár lety.
Vsetky tebou popisane problemy riesi OpenNTPD - http://openntpd.org/ - co je podobne ako OpenSSH podprojekt OpenBSD.