Archiwa tagu: ntpdate

Synchronizacja czasu – Linux + ntp. Wersja nieprzesadzona.

Wrzucałem już raz wpis o automatycznej synchronizacji czasu, ale po przemyśleniu tematu doszedłem do wniosku, że rozwiązanie tam zastosowane jest bez sensu. Czemu?

  1. Stawianie serwera ntpd tylko po to, żeby mieć aktualny czas na swojej maszynie, to totalny i typowy overkill. Rozwiązanie to oczywiście działa skutecznie, jest „zalecane w internetach”, ale jego nadmiarowość aż razi.
  2. Standardowa konfiguracja ntpd na CentOS (ale też pewnie w innych dystrybucjach) otwiera od razu port 123 na wszystkich możliwych interfejsach. Po co? No bo ntpd z założenia służy do serwowania czasu, a nie jego zwykłej synchronizacji.
  3. No właśnie. Po co nam serwer, skoro jedynie chcemy być klientami?

Rozwiązanie jest dużo prostsze. W CentOS 6.5, którego teraz głównie używam, standardowo zainstalowane jest cudo o nazwie ntpdate. Na 99,99999% serwerów, wystarczy synchronizacja czasu raz na dobę.

Chyba już widać co chcę przekazać. CRON + ntpdate rozwiążą nasz problem prosto i skutecznie.
Co robimy?

W katalogu /etc/cron.daily zakładamy sobie plik ntpsynchro z prawami do uruchomienia:

[root@centos /]# touch /etc/cron.daily/ntpsynchro
[root@centos /]# chmod +x /etc/cron.daily/ntpsynchro

Następnie wrzucamy do pliku tę zawartość (np. używając: nano /etc/cron.daily/ntpsynchro):
#!/bin/sh
/usr/sbin/ntpdate pl.pool.ntp.org | logger 1> /dev/null 2>&1

Dobrze jest testowo i w celu pierwszej synchronizacji uruchomić skrypt:

/etc/cron.daily/ntpsynchro

A następnie wyświetlić zawartość logu:

cat /var/log/messages | tail

Poprawnie działający skrypt powinien zalogować nam coś w ten deseń:

Jun  4 14:04:52 centos root:  4 Jun 14:04:52 ntpdate[10409]: adjust time server 217.96.29.26 offset 0.000199 sec

Co się właśnie stało? Nasz serwer, który jest w tej całej akcji KLIENTEM zapytał się serwera pl.pool.ntp.org o aktualny czas, zlogował odpowiedź i oczywiście jeżeli była taka potrzeba ustawił na naszej maszynie.
Prawda, że takie rozwiązanie jest bardziej eleganckie, prostsze i bardziej bezpieczne? 🙂

Automatyczna synchronizacja czasu w CentOS 6.5

DEPRECATED – NIE UŻYWAĆ O ILE NIE POTRZEBUJESZ SERWERA DO USTAWIANIA CZASU W WIĘKSZEJ SIECI LOKALNEJ.

 

SPRAWDŹ WPIS: https://marcin.szydelscy.pl/post/2014/synchronizacja-czasu-linux-wersja-nieprzesadzona/

 

 

Prosta usługa, banalna konfiguracja, a przy tym w zasadzie podstawa dla serwerów.

  1. Zaczynamy od wstępnego zsynchronizowania czasu naszej maszyny:
    [root@centos /]# ntpdate tempus1.gum.gov.pl
    
  2. Instalujemy pakiet ntp:
    [root@centos /]# yum install ntp
    
  3. edytujemy plik /etc/ntp.conf:
    • (opcjonalnie) zmieniamy listę serwerów na:
      server tempus1.gum.gov.pl
      server tempus2.gum.gov.pl
      
    • (opcjonalnie) dodajemy plik do logowania informacji z ntpd:
      logfile /var/log/ntp.log
      
  4. Uruchamiamy usługę:
    [root@centos /]# service ntpd start
    
  5. Sprawdzamy czy podłączyła się do serwerów:
    [root@centos /]# ntpq -p
    

    (opcjonalnie) weryfikujemy log usługi:

    [root@centos /]# type  /var/log/ntp.log
    
  6. Dodajemy do 'autostartu’:
    [root@centos /]# chkconfig ntpd on
    

Gratulacje. Od teraz Twój serwer będzie miał zawsze aktualny czas.

Polecam zmianę listy serwerów czasu na podane wyżej. Są to oficjalne serwery Głównego Urzędu Miar, korzystające z czasu serwowanego przez zegar atomowy. Źródło jest solidne i godne zaufania. Oczywiście ustawione w standardowym konfigu poole centosa, też dadzą radę, ale ja tam wolę nasze. 🙂