22.12. Synchronizace času s xntp

Nastavení aktuálního a jednotného času v síti je důležité pro řadu procesů. Počítače samozřejmě obsahují vlastní hardwarové hodiny. Jejich čas se však může u různých počítačů lišit. Takové časové rozdíly pak mohou způsobit řadu problémů třeba při práci s databázemi. Tento problém můžete řešit ručním nastavením hodin nebo vysíláním správného času po síti.

Síťové řešení tohoto problému nabízí program xntp. Prvním způsobem, který xntp umožňuje, je úprava lokálních hodin počítače pomocí statistických oprav. Druhý způsob představuje úprava času pomocí dotazů na časové servery v síti. Třetí možností je využití některého typu lokálního času jako např. radio hodin.

22.12.1. Nastavení v síti

Výchozí nastavení xntp respektuje jako referenční čas lokální čas počítače. Nejjednodušší způsob, jak přistupovat k serveru, podle kterého se bude čas synchronizovat, je zadání parametrů tohoto serveru do pole server v konfiguračním souboru. Např. pokud má být čas synchronizován podle serveru pojmenovaného ntp.example.com, vložte tento server do souboru /etc/ntp.conf takto:

server ntp.example.com

Další servery vložíte velmi jednoduše. Stačí pro každý další server vytvořit novou řádku začínající slovem server. Po startu programu xntpd zadáním příkazu rcxntpd start počká aplikace hodinu na stabilizaci času a pak vytvoří drift soubor, pomocí kterého upraví lokální čas. Drift soubor umožňuje správný synchronizovaný čas odhadnout ihned při startu podle doby, kdy nebyly v provozu hardwarové hodiny. Tak je zajištěna poměrně spolehlivá synchronizace času na počítači.

Pokud je jméno časového serveru vysíláno po síti, nepotřebujete znát jeho jméno. Stačí do souboru /etc/ntp.conf vložit parametr broadcastclient. Abyste předešli na počítačích nechtěným změnám času, měli byste aktivovat v síti některý z ověřovacích mechanizmů.

Jako k časovému serveru lze přistupovat ke každému počítači v síti, na kterém běží xntpd. Vysílání xntpd aktivujete parametrem:

broadcast 192.168.0.255

Síťovou adresu zadejte podle nastavení své sítě.

22.12.2. Nastavení typu lokálního času

Program xntp obsahuje také ovladač pro lokální čas. Seznam podporovaných hodin najdete v souboru file:/usr/share/doc/packages/xntp-doc/html/refclock.htm po nainstalování balíčku xntp-doc. Každý ovladač je označen vlastním číslem. Konfigurace xntp se pak provádí pomocí pseudo IP. Hodiny jsou registrovány v souboru /etc/ntp.conf, jakoby šlo o standardní síťový časový server.

Hodiny mají přiděleny speciální IP adresy podle vzoru 127.127.t.u. Hodnota t je přidělována z výše zmíněného souboru podle typu. Hodnota u je číslo zařízení od 0. Např. hodiny Typ 8 Generic Reference Driver (PARSE) mají pseudo IP 127.127.8.0.

Řadu ovladačů lze nastavit také pomocí dalších parametrů. Popis parametrů jednotlivých typů ovladačů najdete v odkazech v souboru file:/usr/share/doc/packages/xntp-doc/html/refclock.htm. Díky těmto parametrům lze hodiny nastavit mnohem přesněji. Modul Conrad DCF77receiver module má např. režim 5. Aby program xntp tyto hodiny nastavil, je nutné použít klíčové slovo prefer. Kompletní položka pro nastavení modulu Conrad DCF77 receiver module v konfiguračním souboru se proto napíše takto:

server 127.127.8.0 mode 5 prefer

Ostatní hodiny se zapisují podobně. Příklady najdete v dokumentaci xntp v adresáři /usr/share/doc/packages/xntp-doc/html po instalaci balíčku xntp-doc.

22.12.3. Nastavení NTP klienta v programu YaST

Nastavení NTP klienta můžete v systému SUSE LINUX provést pomocí YaST. Na výběr máte z rychlé nebo komplexní konfigurace.

22.12.3.1. Rychlé nastavení NTP klienta

Rychlé nastavení NTP klienta se skládá ze dvou kroků. V prvním je nutné nastavit spuštění xntpd, v druhém zadat NTP server.

Obrázek 22.33. YaST: Nastavení NTP klienta

YaST: Nastavení NTP klienta

Jednotlivé NTP servery a jejich typ můžete podrobněji nastavit kliknutím na tlačítko Zvolit. Na výběr máte Lokální síť nebo Veřejný NTP server. Zvolte nejvhodnější server a otestujte nastavení tlačítkem Test. Pokud test dopadl dobře, potvrďte výběr tlačítkem OK.

22.12.3.2. Komplexní nastavení NTP klienta

Komplexní nastavení NTP klienta je dostupné v hlavním dialogu NTP klient po kliknutí na tlačítko Komplexní konfigurace viz. obr. 22.33 – „YaST: Nastavení NTP klienta“ po volbě spouštění.

V Komplexní konfiguraci NTP klienta lze nastavit, zda se má xntpd spouštět v chroot jail. Tímto nastavením výrazně zvýšíte bezpečnost systému, protože v případě napadení xntpd nebude mít útočník k dispozici přístup do systému. Volba Nastavit NTP démona pomocí DHCP zajistí získání NTP serverů pro NTP klienta přes DHCP.

Jednotlivé časové servery a další časové zdroje najdete v tabulce pod volbami. Můžete je Přidat, Upravit nebo Smazat. Volba Pokročilé nabízí zobrazení souborů se záznamy a doladění firewallu pro potřeby NTP klienta.

Obrázek 22.34. YaST: Komplexní konfigurace NTP klienta

YaST: Komplexní konfigurace NTP klienta

Nový zdroj časových informací zadáte kliknutím na Přidat. Vyberte požadovaný typ časové synchronizace a klikněte na tlačítko Další. Vybrat si můžete z následujích typů časové synchronizace:

Server

Po této volbě můžete v následujícím dialogu zvolit NTP server (viz. 22.12.3.1 – „Rychlé nastavení NTP klienta“). V poli Volby lze zadat dodatečné volby pro xntpd. Více informací najdete v adresáři /usr/share/doc/packages/xntp-doc.

Rovnocenný

Zde můžete místo serveru zvolit jinou klientskou stanici. Další dialog je podobný jako v případě volby Server.

Radio hodiny

U radio hodin musíte v následujícím dialogu zadat typ hodin, číslo jednotky, jméno zařízení a další volby. Doladění provedete kliknutím na Kalibrace ovladače. Další informace najdete v souboru file:///usr/share/doc/packages/xntp-doc/html/refclock.htm.

Vysílání

Časové informace a dotazy lze vysílat po síti. V tomto nastavení je nutné zadat adresu vysílání. Další možnosti nastavení najdete v adresáři /usr/share/doc/packages/xntp-doc.

Přijímání vysílaných paketů

Jestliže má klient zachytávat vysílané pakety, zadejte v tomto poli adresu, ze které mají být přijímány pakety. Další informace najdete v adresáři /usr/share/doc/packages/xntp-doc.


SUSE LINUX 9.2