тайм-аут, ничего не получено

9

Я перепробовал все и много гуглил! Но я не могу заставить работать NTP на моем сервере. Этот пост - последняя надежда! Я установил NTP на сервере Debian с этой конфигурацией ( /etc/ntp.conf):

driftfile /var/lib/ntp/ntp.drift

statdir /var/log/ntpstats/

statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

server 0.it.pool.ntp.org iburst
server 1.it.pool.ntp.org iburst
server 2.it.pool.ntp.org iburst
server 3.it.pool.ntp.org iburst

restrict -4 default nomodify nopeer noquery notrap
restrict -6 default nomodify nopeer noquery notrap

# Restrict eth0 ip
restrict 192.168.1.1
restrict 127.0.0.1 noserve nomodify
restrict ::1

Теперь, когда я пытаюсь:

ntpq -pn
127.0.0.1: timed out, nothing received
***Request timed out

Когда я пытаюсь:

ntpdate -q
9 Mar 18:08:01 ntpdate[27896]: no servers can be used, exiting

Но с:

ntpdate -d 0.it.pool.ntp.org

Я получаю входящие пакеты и устанавливаю смещение времени. Это привело меня к неправильной конфигурации ntp.conf .

Любые подсказки, почему это происходит.

Тестовое задание
источник
Какой файл вы показываете? Это что /etc/ntp.conf? Вы уверены в этих серверах NTP? Попробуйте Debian, мой (рабочий) ntp.conf здесь .
Terdon
Да, это ntp.conf. Я попробую с серверами Debian. Спасибо
Тест
Нет, всегда одни и те же ошибки.
Тест
Предполагая, что вы перезапустили ntpd после внесения этих изменений, это правильно? service ntpd restart,
СЛМ
1
Кроме того, ваши ограничительные линии странные ... Посмотрите на support.ntp.org/bin/view/Support/AccessRestrictions
derobert

Ответы:

3

Если ни один из NTP-серверов, которые вы пытаетесь запустить, не отвечает, вероятно, брандмауэр блокирует либо исходящие запросы, либо входящие ответы.

NTP использует UDP-порт 123. Вы можете проверить, не блокируются ли исходящие запросы, запустив traceroute на этом порту. В зависимости от вашей реализации traceroute, это может быть что-то вроде traceroute -p 123 0.it.pool.ntp.org(Debian включает в себя несколько реализаций traceroute, check traceroute --helpили man tracerouteв вашей системе). Если входящие запросы заблокированы, но исходящие запросы проходят, я не думаю, что вы можете определить, где они заблокированы, без доступа к машине за пределами вашей сети (если у вас есть доступ к такой машине, запустите traceroute -p 123 your.ip.address). Обратите внимание, что если у вас есть частный IP-адрес , для возможности использования NTP требуется сотрудничество сетевого администратора (в частности, поддержка NTP в устройстве NAT ).

Если на вашем компьютере установлен брандмауэр, убедитесь, что он пропускает NTP. Простой способ - разрешить весь трафик через UDP-порт 123:

iptables -A INPUT -p udp --sport 123 --dport 123 -j ACCEPT
iptables -A OUTPUT -p udp --sport 123 --dport 123 -j ACCEPT

(Возможно, вы захотите добавить директивы -d/, -sчтобы ограничиться определенным IP-адресом или набором IP-адресов. Обратите внимание, что если вы сделаете это, вам нужно будет обновить эти правила, если серверы NTP в пуле, который вы используете, меняют IP-адреса .)

Если трафик NTP заблокирован где-то между вашей машиной и Интернетом, обратитесь к администратору сети. Вероятно, существует ретранслятор, который вы можете использовать в качестве NTP-сервера.

Жиль "ТАК - перестань быть злым"
источник
Внешний NTP-трафик, вероятно, заблокирован вашим хостинг-провайдером / провайдером. Это серьезный подход для предотвращения DDOS. Спросите своего провайдера, к каким внутренним ntp-серверам вы можете подключиться.
DFC
1
@dfc По моему опыту, корпоративные брандмауэры блокируют NTP как часть блокировки всего UDP или как естественное следствие NAT, но интернет-провайдеры этого не делают (кроме тех, кто NAT). Но на самом деле, если ваш провайдер блокирует входящий NTP, он должен предоставить NTP-сервер в своей сети.
Жиль "ТАК - перестань быть злым"
Я уже добавил эти правила в iptables, но все же ошибка. Странно с: ntpdate -d 0.it.pool.ntp.org, это работает. Так что я верю, что это ntp.conf.
Тест
@ Жиль - это «ваш опыт», учитывая недавнюю волну DDoS-атак, использующих ntp? Год назад я бы согласился с вашим комментарием. Однако после недавних волнений выходной NTP-фильтрация встречается гораздо чаще, чем вы думаете.
декабря
@ BojanVidanovic Это не имеет никакого смысла, что он работает с ntpdate, а не с ntp. Когда он работает с ntpdate, вы должны записать IP-адрес, который возвратил ann answer, и попробовать поместить его в ntp.conf. Ответ DNS для адреса pool.ntp.org будет варьироваться в зависимости от того, сколько серверов в данный момент исправно, в дополнение к некоторой псевдослучайности в демоне dns.
2013 г.
3

Насколько я могу сказать, ваш вопрос: «Почему ntpq -pnне работает так, как я ожидаю?»

Измените эту строку:

restrict 127.0.0.1 noserve nomodify

Вернемся к тому, что было изначально:

restrict 127.0.0.1

сейчас ntpq -pnбудет работать.

К вашему сведению: ::1версия IPv6127.0.0.1

Обновленный конфиг:

driftfile /var/lib/ntp/ntp.drift

statdir /var/log/ntpstats/

statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

server 0.it.pool.ntp.org iburst
server 1.it.pool.ntp.org iburst
server 2.it.pool.ntp.org iburst
server 3.it.pool.ntp.org iburst

restrict -4 default nomodify nopeer noquery notrap
restrict -6 default nomodify nopeer noquery notrap

# Restrict eth0 ip
restrict 192.168.1.1
restrict 127.0.0.1
restrict ::1
DFC
источник
127.0.0.1: истекло время ожидания, ничего не получено *** Время ожидания запроса истекло
тест
Вы обновили свой /etc/ntp.conf до того, что показано выше, и перезапустили ntp, и вы получили сообщение о превышении времени ожидания? какой выход netstat -laun?
декабря
Большое спасибо! Я также добавил «ограничить localhost» в конце ограничений
Vagner do Carmo
1

Ваша проблема заключается в выборе этих двух серверов в этих двух строках вашего файла конфигурации:

server ntp1.inrim.it iburst
server ntp2.inrim.it iburst

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

$ sudo ntpq -p ntp1.inrim.it
ntp1.inrim.it: timed out, nothing received
***Request timed out

$ sudo ntpq -p ntp2.inrim.it
ntp2.inrim.it: timed out, nothing received
***Request timed out

Я бы попробовал выбрать несколько разных серверов для начинающих.

Эти серверы?

Когда я гуглил их имена, я наткнулся на эту страницу под названием: « Конфигурируйте il vostro NTP» . Был также упомянут другой сервер, который не работал:

$ sudo ntpq -p host2.miaditta.it 
host2.miaditta.it: timed out, nothing received
***Request timed out

Эти серверы, похоже, являются проблемой.

Шифрование?

Если вы посмотрите дальше на этот URL выше, о котором я упоминал, они обсуждают использование шифрования, вам может потребоваться включить его для доступа к этим NTP-серверам.

Советы по отладке

Я смог успешно подключиться к обоим вашим iburst серверам с помощью этой команды:

$ ntpdate -d <server>
пример
$ ntpdate -d ntp1.inrim.it
 9 Mar 21:01:37 ntpdate[20739]: ntpdate 4.2.6p5@1.2349-o Tue Apr  2 17:47:01 UTC 2013 (1)
Looking for host ntp1.inrim.it and service ntp
host found : ntp1.inrim.it
transmit(193.204.114.232)
receive(193.204.114.232)
...
server 193.204.114.232, port 123
stratum 1, precision -22, leap 00, trust 000
refid [CTD], delay 0.19319, dispersion 0.00084
transmitted 4, in filter 4
reference time:    d6c78d79.f0206119  Sun, Mar  9 2014 21:01:45.937
originate timestamp: d6c78d7e.55ab5b4b  Sun, Mar  9 2014 21:01:50.334
transmit timestamp:  d6c78d77.7e9b8296  Sun, Mar  9 2014 21:01:43.494
filter delay:  0.19460  0.19710  0.19453  0.19319 
         0.00000  0.00000  0.00000  0.00000 
filter offset: 6.755368 6.757349 6.755239 6.756265
         0.000000 0.000000 0.000000 0.000000
delay 0.19319, dispersion 0.00084
offset 6.756265

 9 Mar 21:01:43 ntpdate[20739]: step time server 193.204.114.232 offset 6.756265 sec

Так что может показаться, что с вашим ntp.confфайлом что-то не так . Пожалуйста, подтвердите, что это так, и мы можем продолжить отладку.

ОДС
источник
Да, я не буду использовать эти серверы, но я добавил debian.pool.ntp.org, и я все еще получаю: тайм-аут. Или it.pool.ntp.org, который работает, выдает мне ту же ошибку. На данный момент я думаю, что что-то блокирует NTP.
Тест
если я попытаюсь: ntpdate 0.debian.pool.ntp.org, это работает.
Тест
Да, с помощью: ntpdate -d ntp1.inrim.it я вижу те же результаты, что и у вас. Тогда, вероятно, это ntp.conf.
Тест
1
@ BojanVidanovic - да, проблема скорее всего ваша ntp.conf. Так что это хороший прогресс. Я бы убрал большинство строк, кроме серверных, для дальнейшей отладки.
SLM
1
Переключение на ntpd, добавление -dпараметров добавит больше и -D levelвключит INFO, TRACE, DEBUG и т. Д.
slm
0

В моем случае, петлевой адаптер был отключен в системе. После включения проблема была решена. Смотрите файл / etc / network / interfaces.

lehab
источник
0

Из того, что я вижу, вы настроили NTP-сервер, но указываете на пул

server 0.pool.ntp.org

Пытаться:

pool 0.pool.ntp.org

вместо этого или используйте «сервер» с выделенным сервером, а не с пулом.

ronator
источник