Назад | Перейти на главную страницу

ntp.conf: разумно ли полагаться на список серверов по умолчанию, представленный в CentOS?

Каждый раз, когда я настраиваю новый хост Linux (в последнее время CentOS), особенно когда такой хост будет иметь некоторые роли в нашем небольшом центре обработки данных (около 100 хостов), я позабочусь о том, чтобы:

  1. установить пакет ntp;
  2. Добавить, поверх списка серверов, новый экземпляр сервера указывает:
    • на наш более-менее официальный итальянский ntp-сервер (time.ien.it), если в системе есть исходящий ntp-доступ;
    • к «внутреннему хосту», который действует как своего рода официальный «внутренний» сервер ntp, если система не подключена к Интернету.
  3. включение службы ntp, чтобы правильно справляться с перезагрузками

Итак, что касается систем с доступом в Интернет, список серверов настроен в ntp.conf следующее:

server time.ien.it iburst
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst

Изучая совершенно разные проблемы, я обнаружил, что приведенная выше конфигурация генерирует трафик для удаленные хосты, о которых я совершенно не знаю.

Вот отрывок tcpdump захват, взятый на исходящем интерфейсе нашего drbd-store-02-ch хост:

где можно увидеть:

В ходе расследования выяснилось, что есть и другие хосты, не вошедшие в список выше. Я даже нашел хосты, чье обратное имя хоста явно указывало на некоторых крупных интернет-провайдеров, имея в виду VPS и тому подобное.

Итак, мои вопросы:

  1. Нужно ли мне удалять список серверов по умолчанию и полагаться только на мои "доверенные" time.ien.it внешний хост ntp-сервера?
  2. если нет, то как я могу быть уверен, что эти удаленные хосты эффективно "безопасны" и должным образом защищены / управляются ... чтобы не подвергать риску мои запросы-службы ntp?

P.S .: в качестве примечания, я полностью осведомлен о процессе разрешения DNS, поэтому проблема в не "почему" я связываюсь с этими серверами. Проблема в том, что это безопасно?

Вкратце: наверное, безопасно.

Более длинная версия: поведение, которое вы видите, совершенно нормальное и ожидаемое. В Пул NTP - это динамический пул, который, вероятно, будет меняться каждый раз, когда истечет время жизни DNS.

Каждый хост в пуле контролируется инфраструктурой пула NTP, и если он сообщает о времени, которое слишком далеко от допустимого, он удаляется из пула. Вы можете просмотреть записи мониторинга каждого хоста на http://www.pool.ntp.org/scores/IP (где IP - это IP-адрес сервера). например Когда я сейчас просматриваю 0.centos.pool.ntp.org на своей машине, я получаю следующие адреса:

Предполагая, что ваши требования к синхронизации времени являются средними (с точки зрения смещения от истинного времени), обычно рекомендуется настроить 4-6 серверов в вашей собственной сети, которые синхронизируются с 4-6 серверами в пуле и указывают вашим внутренним хостам на те локальные серверы. Подробнее об этом я рассказывал в этом году на Linux.conf.au системный администратор miniconf (последний разговор на странице).

РЕДАКТИРОВАТЬ: Обратите внимание, что некоторые серверы пула также являются узлами ретрансляции или выхода TOR. Это иногда вызывает проблемы у пользователей пула NTP с их чрезмерно рьяными IDS / IPS или даже с их провайдером. Видеть https://twitter.com/_lennart/status/861714732709031936 для недавнего примера.

Это похоже на довольно распространенный случай, когда поставщик программного обеспечения (Centos) поставляет бесплатную публичную Пул NTP.org в их конфигурации NTP по умолчанию, вместо того, чтобы предоставлять собственную инфраструктуру NTP или полагаться на то, что у пользователя есть инфраструктура NTP.

Я процитирую их документацию ниже.

Что касается использование пула NTP.org:

Подумайте, подходит ли NTP Pool для вашего использования. Если бизнес, организация или человеческая жизнь зависят от правильного времени или могут пострадать из-за неправильного времени, вам не следует «просто убирать это из Интернета». Пул NTP, как правило, очень высокого качества, но это услуга, которую проводят волонтеры в свободное время. Пожалуйста, поговорите с поставщиками оборудования и услуг о том, как организовать для вас надежную услугу на месте. См. Также наши условия обслуживания. Мы рекомендуем серверы времени от Meinberg, но вы также можете найти серверы времени от End Run, Spectracom и многих других.

...

Если у вашего интернет-провайдера есть сервер времени, или если вы знаете о хорошем сервере времени рядом с вами, вам следует использовать его, а не этот список - вы, вероятно, получите лучшее время и будете использовать меньше сетевых ресурсов. Если вы знаете только один сервер времени рядом с вами, вы, конечно, можете использовать его и два из pool.ntp.org или около того.


Учитывая Зоны поставщиков пула NTP.org (словно centos в 0.centos.pool.ntp.org):

Получите свою зону продавца
Чтобы вы могли использовать пул в качестве службы времени по умолчанию в вашем приложении, мы назначим вам специальные имена хостов, например 0.vendor.pool.ntp.org, 1.vendor.pool.ntp.org, 2.vendor .pool.ntp.org и 3.vendor.pool.ntp.org.

Ни в коем случае нельзя использовать имена зон pool.ntp.org по умолчанию в качестве конфигурации по умолчанию в вашем приложении или устройстве.

...

Зачем использовать специальные имена хостов для поставщиков?
Специальные имена хостов позволяют нам в некоторой степени контролировать трафик, поэтому мы можем оптимизировать распределение нагрузки и сопоставить клиентов с лучшими серверами. Это также дает лучшие возможности для продолжения поддержки в случае проблем с отдельными группами клиентов. (См. Ссылки в разделе основных рекомендаций).


Что касается безопасности серверов в пуле NTP.org, серверы в пуле находятся под наблюдением, но, как они прямо говорят, если у вас есть лучший (более надежный и надежный) вариант, вы должны использовать его.

Вероятно, вам следует использовать только такой список в DMZ. Внутренние системы никогда не должны иметь возможность просто связываться со случайными службами в Интернете, используя порт 123 UDP.

  1. Вы должны сократить список до доверенных хостов только в вашей собственной сети. В DMZ вы должны быть уверены, что ваше программное обеспечение NTP не просто пересылает странные запросы изнутри в Интернет.
  2. Ты не можешь. Эти хосты также можно ужасно настроить.

Поэтому, если у вас есть веская причина иметь надежный сервер времени, выберите тот, который взаимодействует с хорошим устройством-источником времени, и не подключайте его к Интернету.

Потребление или предоставление неподходящего времени, вероятно, можно отнести к категории «проступков в Интернете». Все имена CentOS NTP представляют собой пакет IP-адресов, вероятно, предназначены для предоставления широкой выборки источников времени (потому что рисование полного бланка NTP может быть хуже?).

Лично я бы умеренно доверял списку, который составляет CentOS, но если вы обеспокоены или если есть бизнес-потребность, вы сможете найти NTP в сети вашего провайдера или в NIST (time-a.nist.gov, и т. д.), если вы им доверяете. В обстоятельствах, когда безопасность имела первостепенное значение, я использовал время в сети моего поставщика и повторно разместил эту временную привязку на основных маршрутизаторах, чтобы все потребители в сети могли использовать единый и известный источник.