Я хотел усилить свою безопасность, чтобы не открывать ненужные порты. У меня нет намерений запускать сервер ntp для использования другими людьми, я запускаю демон ntp только для синхронизации локальных часов, поэтому я добавил эти две строки в свой /etc/ntp.conf:
interface ignore wildcard
interface listen lo
Но после этого ntpd, похоже, не может подключиться к серверам, как показали:
# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
secondary.cleve .INIT. 16 - - 64 0 0.000 0.000 0.000
time.videxio.ne .INIT. 16 - - 64 0 0.000 0.000 0.000
ns0.luns.net.uk .INIT. 16 - - 64 0 0.000 0.000 0.000
rigel.retrosnub .INIT. 16 - - 64 0 0.000 0.000 0.000
europium.canoni .INIT. 16 - - 64 0 0.000 0.000 0.000
Похоже, что конфигурация заставляет nptd вообще не использовать эти интерфейсы, даже для подключения к другим серверам.
Нужно ли ntpd прослушивать внешние интерфейсы, чтобы синхронизировать часы?
Насколько я могу судить, игнорировать означает не открывать адрес / порт, отбрасывать означает открывать, но игнорировать любой трафик (хотя он может все еще использовать их). Так что да, кажется, нужен привязанный интерфейс ..
Ссылка: http://www.eecis.udel.edu/~mills/ntp/html/miscopt.html#interface
Мне нравится продвигать конфигурации "без защиты от брандмауэра", даже когда я за ними, поэтому меня расстраивает, когда пакет не предлагает контроль над привязкой интерфейса. В (старый) http://www.openntpd.org/ . Для "классического" ntpd, http://support.ntp.org/bin/view/Support/AccessRestrictions имеет небольшой лабиринт рекомендаций, которые можно протестировать с помощью ваших любимых запросов (например, ntpdate с другого хоста, check_ntp из набора плагинов Nagios и т. д.).