upłynął limit czasu, nic nie otrzymano


9

Próbowałem wszystkich i dużo googlowałem! Ale nie mogę sprawić, by NTP działał na moim serwerze. Ten post jest ostatnią nadzieją! Zainstalowałem NTTP na serwerze Debiana z tą konfiguracją ( /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

Teraz, gdy próbuję:

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

Kiedy próbuję:

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

Ale z:

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

Odbieram przychodzące pakiety i ustawiam przesunięcie czasowe. Doprowadziło mnie to do złej konfiguracji ntp.conf .

Wszelkie wskazówki, dlaczego tak się dzieje.


Jaki plik wyświetlasz? Czy to /etc/ntp.confjest Czy jesteś pewien tych serwerów NTP? Wypróbuj Debiana, mój (działający) plik ntp.conf jest tutaj .
terdon

Tak, to jest ntp.conf. Spróbuję z serwerami Debiana. Dzięki
Przetestuj

Nie, zawsze te same błędy.
Test

Zakładając, że zrestartowałeś ntpd po dokonaniu tych zmian, czy to prawda? service ntpd restart.
slm

1
Poza tym twoje ograniczenia są dziwne ... Spójrz na support.ntp.org/bin/view/Support/AccessRestrictions
derobert

Odpowiedzi:


3

Jeśli wydaje się, że żaden z serwerów NTP, na które próbujesz odpowiedzieć, prawdopodobnie zapora blokuje wychodzące żądania lub przychodzące odpowiedzi.

NTP używa portu UDP 123. Możesz sprawdzić, czy wychodzące żądania są blokowane, uruchamiając traceroute na tym porcie. W zależności od implementacji traceroute może to być coś podobnego traceroute -p 123 0.it.pool.ntp.org(Debian zawiera kilka implementacji traceroute, check traceroute --helplub man traceroutew twoim systemie). Jeśli przychodzące żądania są blokowane, ale przychodzą żądania wychodzące, nie sądzę, że możesz zdiagnozować, gdzie są one zablokowane bez dostępu do komputera poza siecią (jeśli masz dostęp do takiego komputera, uruchom traceroute -p 123 your.ip.address). Pamiętaj, że jeśli masz prywatny adres IP , możliwość korzystania z protokołu NTP wymaga współpracy administratora sieci (w szczególności obsługi protokołu NTP w urządzeniu NAT ).

Jeśli skonfigurowałeś zaporę na swoim komputerze, upewnij się, że przepuszcza NTP. Najprostszym sposobem jest zezwolenie na cały ruch na porcie UDP 123:

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

(Możesz dodać -d/ -sdyrektywy, aby ograniczyć do określonego adresu IP lub zestawu adresów IP. Pamiętaj, że jeśli to zrobisz, musisz zaktualizować te reguły, jeśli serwery NTP w puli, której używasz, zmienią adresy IP .)

Jeśli ruch NTP jest gdzieś zablokowany między twoim urządzeniem a Internetem, skontaktuj się z administratorem sieci. Prawdopodobnie istnieje maszyna przekaźnikowa, której można użyć jako serwera NTP.


Zewnętrzny ruch NTP jest prawdopodobnie blokowany przez twojego dostawcę hostingu / ISP. Jest to ciężkie podejście do zapobiegania DDOS. Zapytaj swojego dostawcę usług internetowych, z którymi wewnętrznymi serwerami NTTP możesz się połączyć.
dfc,

1
@dfc Z mojego doświadczenia wynika, że ​​korporacyjne zapory ogniowe blokują NTP w ramach blokowania wszystkich UDP lub jako naturalną konsekwencję NAT, ale dostawcy usług internetowych nie (z wyjątkiem tych, którzy NAT). Ale rzeczywiście, jeśli twój dostawca usług internetowych blokuje przychodzący NTP, powinien zapewnić serwer NTP w swojej sieci.
Gilles 'SO - przestań być zły'

Dodałem już te reguły do ​​iptables, ale nadal ten sam błąd. Dziwnie z: ntpdate -d 0.it.pool.ntp.org, to działa. Więc wierzę, że to ntp.conf.
Test

@Gilles to „twoje doświadczenie”, biorąc pod uwagę ostatnią falę ataków DDoS, które wykorzystują NTTP? Rok temu zgodziłbym się z twoim komentarzem. Jednak po ostatnich falach ataków wyjście z filtrowania ntp jest o wiele bardziej powszechne niż myślisz.
dfc,

@BojanVidanovic Nie ma sensu, aby działał z ntpdate, a nie z ntp. Kiedy działa z ntpdate, powinieneś zanotować adres IP, który zwrócił ann, i spróbuj umieścić go w ntp.conf. Odpowiedź DNS na adres pool.ntp.org będzie się różnić w zależności od liczby serwerów, na których monitorowanie puli jest obecnie sprawne, oprócz pewnej pseudolosowości w demonie dns.
dfc,

3

O ile mogę powiedzieć, twoje pytanie brzmi: „Dlaczego ntpq -pnnie działa tak, jak się spodziewam?”

Zmień tę linię:

restrict 127.0.0.1 noserve nomodify

powrót do pierwotnej wersji:

restrict 127.0.0.1

teraz ntpq -pnbędzie działać.

FYI: ::1to wersja IPv6127.0.0.1

Zaktualizowana konfiguracja:

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

127.0.0.1: Przekroczono limit czasu, nic nie otrzymano *** Przekroczono limit czasu żądania
test

Zaktualizowałeś /etc/ntp.conf do tego, co pokazano powyżej, zrestartowałeś NTTP i dostałeś komunikat o przekroczeniu limitu czasu? Jaka jest wydajność netstat -laun?
dfc

Wielkie dzięki! Dodałem również „ogranicz hosta lokalnego” na końcu ograniczeń
Vagner do Carmo

1

Problem dotyczy wyboru tych 2 serwerów w tych 2 wierszach pliku konfiguracyjnego:

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

Gdy próbuję przesłać zapytanie do któregokolwiek z nich, również pojawia się błąd:

$ 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

Na początek spróbuję wybrać inne serwery.

Te serwery?

Gdy szukam ich nazw w Google, natknąłem się na tę stronę zatytułowaną: Come configurare il vostro NTP . Wspomniał też o innym serwerze, który nie działał:

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

Wydaje się, że te serwery stanowią problem.

Szyfrowanie

Jeśli spojrzysz w dół na ten adres URL powyżej, o którym wspomniałem, dyskutują na temat szyfrowania, może być konieczne włączenie tego, aby uzyskać dostęp do tych serwerów NTP.

Wskazówki dotyczące debugowania

Udało mi się połączyć z oboma iburstserwerami za pomocą tego polecenia:

$ ntpdate -d <server>
Przykład
$ 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

Wygląda na to, że Twój problem jest w rzeczywistości nieprawidłowy w Twoim ntp.confpliku. Potwierdź, że tak jest, i możemy kontynuować debugowanie.


Tak, nie będę używać tych serwerów, ale dodałem debian.pool.ntp.org i nadal otrzymuję: przekroczony limit czasu. Lub it.pool.ntp.org, który działa daje mi ten sam błąd. W tym momencie myślę, że coś blokuje NTP.
Test

jeśli spróbuję: ntpdate 0.debian.pool.ntp.org, to działa.
Test

Tak, z: ntpdate -d ntp1.inrim.it Widzę takie same wyniki jak twoje. Więc prawdopodobnie jest to ntp.conf.
Test

1
@BojanVidanovic - tak tak, problem jest prawdopodobnie twój ntp.conf. To dobry postęp. Wyciągnąłem większość linii, z wyjątkiem linii serwerowych, aby dalej to debugować.
slm

1
Przełączenie na ntpd, dodawanie -dopcji doda więcej i -D levelumożliwi INFO, ŚLEDZENIE, DEBUGĘ itp.
slm

0

W moim przypadku adapter sprzężenia zwrotnego został wyłączony w systemie. Po włączeniu problem został rozwiązany. Zobacz plik / etc / network / interfaces.


0

Z tego, co widzę, skonfigurowałeś serwer NTP, ale wskazujesz to na POOL

server 0.pool.ntp.org

Próbować:

pool 0.pool.ntp.org

zamiast tego lub użyj „server” z serwerem dedykowanym, a nie pulą.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.