Рейтинг:0

iptables с NTP

флаг ro

Я использую iptables фильтровать трафик, а также хронид для синхронизации системного времени. Тем не менее, я не заставляю его работать, как-то хронид не может получить доступ к серверу NTP.

Вот мои правила iptables:

# iptables -S
-P ВХОД ПАДЕНИЕ
-P ПАДЕНИЕ ВПЕРЕД
-P ВЫХОД ПАДЕНИЕ
-A ВВОД -i eth0 -p udp -m udp --dport 123 -j ПРИНЯТЬ
-A ВЫВОД -o eth0 -p udp -m udp --sport 123 -j ПРИНЯТЬ

И вот я пытаюсь синхронизировать системное время:

# chronyd -4 -q 'сервер 0.openembedded.pool.ntp.org iburst'
2021-01-27T09:06:15Z запуск хронид версии 3.5 (+CMDMON +NTP +REFCLOCK +RTC -PRIVDROP -SCFILTER -SIGND +ASYNCDNS -SECHASH +IPV6 -DEBUG)
2021-01-27T09:06:15Z Нет подходящего источника для синхронизации
2021-01-27T09:06:15Z хронид уходит

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

Рейтинг:1
флаг gn

Когда ваш компьютер пытается получить доступ к NTP-серверу, исходный порт будет неопределенным, а место назначения на сервере будет 123. Таким образом, это противоположно тому, что у вас есть сейчас. Сделайте это вместо этого:

# iptables -S
-P ВХОД ПАДЕНИЕ
-P ПАДЕНИЕ ВПЕРЕД
-P ВЫХОД ПАДЕНИЕ
-A ВВОД -i eth0 -p udp -m udp --sport 123 -j ПРИНЯТЬ
-A ВЫВОД -o eth0 -p udp -m udp --dport 123 -j ПРИНЯТЬ

РЕДАКТИРОВАТЬ: Из вопросов комментариев:

Для цепочки ВХОД --спорт 123 означает порт на удаленной машине, а для цепочки OUTPUT --дпорт 123 означает порт на удаленной машине.

Одно правило может работать на нескольких сетевых интерфейсах, не указывая сетевой интерфейс, хотя я не понимаю, зачем вам это нужно. Итак (не проверено):

-A ВВОД -p udp -m udp --sport 123 -j ПРИНЯТЬ
-A ВЫВОД -p udp -m udp --dport 123 -j ПРИНЯТЬ
Doug Smythies avatar
флаг gn
отредактировал ответ, чтобы включить дополнительные ответы.
Jags avatar
флаг kp
Большое спасибо за разъяснения @doug-smythies
user278965 avatar
флаг ro
@DougSmythies Я тоже пробовал это, но это не работает (команда chronyd не работает, как и раньше). К вашему сведению: у нас есть два интерфейса, и мы хотим синхронизировать время только через eth0 (хотя я пробовал и без eth0, результат тот же).
user278965 avatar
флаг ro
Мне также пришлось включить порт 53 для поиска DNS, тогда это сработало.
Doug Smythies avatar
флаг gn
Да, я хотел упомянуть, что вам, вероятно, потребуется разрешить некоторые другие вещи для минимальной работы. Я предполагаю, что вы используете статические IP-адреса, в противном случае вам нужно разрешить порты 67 и 68. Как правило, один разрешает любой исходящий трафик и СВЯЗАННЫЙ, УСТАНОВЛЕННЫЙ входящий.
Этот вопрос на других языках:

Ответить или комментировать

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