NTPd по умолчанию прослушивает UDP-порт 123 (все IP-адреса). Это необходимо для обновления времени сервера?
Если необходимо прослушать адрес, какой единственный адрес следует использовать? Возможные адреса, которые он может прослушивать:
Почему ему даже нужно слушать localhost (127.0.0.1 и :: 1)? Никто не может связаться с сервером по этому адресу.
Чтобы привязать NTPd к одному адресу, -I
вариант можно использовать. Для моего компьютера Debian мне пришлось отредактировать /etc/default/ntp
и заменить -g
по:
-g -I 1.2.3.4 -I 127.0.0.1
Это заставляет NTPd прослушивать общедоступный адрес 1.2.3.4 (замените его своим) и 127.0.0.1.
Если вы просто хотите обновить местное время, вам, вероятно, следует ограничить доступ к серверу, поскольку ntpd не поддерживает настройку адресов для прослушивания.
Первым делом нужно настроить политику по умолчанию. Вы можете либо заблокировать всю связь, которая не будет включена впоследствии, но помните, что ограничения действуют для клиента и сервера в обоих направлениях.
restrict default ignore
# Allow access to localhost
restrict 127.0.0.1
restrict IP.OF.UPSTREAM.SERVER
Или вы можете разрешить обмен времени по умолчанию и разрешить запрашивать сервер только на локальном хосте:
restrict -4 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
Также ntpd позволяет выбрать интерфейс, на котором он работает, с помощью переключателя -I. Если вы используете Debian, вы можете просто добавить этот переключатель -I в переменную NTPD_OPTS в / etc / defaults / ntpd.
ntpd -I eth0
Прослушивание на localhost имеет смысл, если вы хотите выполнять запросы на локальном компьютере. Например, ntpq -p localhost
запросит службу ntp, работающую в вашем локальном компьютере.
В общем, вы, вероятно, хотите, чтобы ntpd прослушивал все реальные адреса, на которые ему нужно отправлять или получать обновления. Если вы используете ipv6, вам также необходимо указать адреса ipv6, в противном случае просто укажите реальные ip-адреса сервера и ipv4 localhost.