- 1 1. Sissejuhatus: Miks ajasünkroniseerimine on oluline?
- 2 2. Mis on ntpd? Roll ja valikud Ubuntus
- 3 3. ntpd paigaldamine ja esmane seadistus Ubuntus
- 4 4. NTP-serverite seadistamine ja kohandamine
- 5 5. ntpd töö kontrollimine ja tõrkeotsing
- 6 6. ntpd ja teiste ajasünkroniseerimise tööriistade võrdlus
- 7 7. Korduma kippuvad küsimused (KKK)
- 8 8. Kokkuvõte: Stabiilne ajasünkroniseerimine suurendab süsteemi usaldusväärsust
1. Sissejuhatus: Miks ajasünkroniseerimine on oluline?
Probleemid, mida põhjustab süsteemi kellaaja erinevus
Ubuntu ja teised Linuxi süsteemid nõuavad väga täpset kellaaega. Esmapilgul võib see tunduda vaid väike viga kellas, kuid serverite haldamisel ja rakenduste käitamisel võivad ajavead põhjustada tõsiseid probleeme.
Näiteks võivad ilmneda järgmised probleemid:
- Logide järjepidevus kaob
Kui süsteemi või rakenduse logide ajad ei klapi, muutub tõrgete põhjuste tuvastamine väga keeruliseks. - cron-tööde vale ajastus
Ajastatud protsessid (varundused, partiitöötlus jms) ei pruugi toimuda õigel ajal, mis võib põhjustada ootamatuid olukordi. - SSL-sertifikaatide ja turvaautentimise tõrked
HTTPS-ühendused ja SSH-autentimine nõuavad täpset kellaaega. Kui kellaaeg on vale, võivad sertifikaadid muutuda „aegunuks“ ning tekivad ühendusvead.
Need mõjud on eriti tõsised siis, kui mitut serverit kasutatakse võrgus sünkroniseeritult.
NTP roll ja olulisus
Selliste probleemide vältimiseks kasutatakse NTP-d (Network Time Protocol). NTP suhtleb interneti või kohaliku võrgu aja-serveritega ja korrigeerib automaatselt süsteemi kellaaega.
Ubuntus saab kasutada mitut NTP-tööriista, nagu ntpd, chrony ja systemd-timesyncd. Selles artiklis keskendume ntpd-le (Network Time Protocol daemon) ja selgitame üksikasjalikult selle seadistamist ning kasutamist Ubuntus.
Eriti olulise töökindluse tõttu soovitatakse ntpd-d kasutada serverites, mis peavad kaua töötama või kus on vaja logide täpset järjepidevust.
Järgmises peatükis tutvustame, mis on ntpd ja milline on selle roll ning millised valikud Ubuntus on saadaval.
2. Mis on ntpd? Roll ja valikud Ubuntus
ntpd ülevaade ja omadused
ntpd (Network Time Protocol Daemon) on deemonprogramm, mis kasutab NTP-d süsteemi kellaaja täpseks hoidmiseks. See suhtleb regulaarselt interneti või kohaliku võrgu NTP-serveritega ja korrigeerib automaatselt süsteemikella.
ntpd iseloomulikuks omaduseks on „sujuv sünkroniseerimine“, mis korrigeerib aega järk-järgult, vältides äkilisi kellamuudatusi ja seega mõjutamata töötavaid süsteeme või rakendusi.
Lisaks toetab ntpd ka sümmeetrilist sidet ja autentimist, võimaldades kasutada seda ka ettevõtte keskkonnas usaldusväärse aja-sünkroniseerimise teenusena.
Ajaga sünkroniseerimise tööriistad Ubuntus
Ubuntus on aja sünkroniseerimiseks mitmeid võimalusi:
- ntpd (ntp-pakett)
Levinud valik pikaajalise töö või detailse seadistuse vajaduse korral. Võimaldab väga täpset aega ja on stabiilne, töötades hästi avalike NTP-serveritega. - chrony
Kaasaegne alternatiiv ntpd-le, suure täpsusega ja väga kiire esmasünkroniseerimisega. Sobib hästi madala ressursiga või virtuaalmasinatele ning on mitmes distributsioonis juba vaikimisi kasutusel. - systemd-timesyncd
Alates Ubuntu 20.04-st on vaikimisi aktiivne kerge ajasünkroniseerija. Lihtne ja mugav, kuid piiratud võimalustega ning ei sobi keerukateks seadistusteks ega lokaalseks NTP-serveriks.
Miks valida ntpd ja selle eelised
Ubuntus ntpd kasuks otsustamise peamine põhjus on selle usaldusväärsus ja stabiilsus. Eriti sobiv on ntpd järgmistes olukordades:
- Pikaajaliselt töötavad serverid, kus aja täpsus on oluline
- Lokaalse NTP-serveri loomise vajadus sisevõrgus
- Ettevõttesisene autentimine või keerukamad kontrollnõuded
ntpd sobib hästi olemasolevate süsteemidega ja on laialdaselt kasutusel, mis teeb juurutamise lihtsaks ja turvaliseks.
3. ntpd paigaldamine ja esmane seadistus Ubuntus
ntpd paigaldamise sammud
Ubuntus ntpd kasutamiseks tuleb kõigepealt paigaldada ntp pakett. Seda saab teha järgmiselt:
sudo apt update
sudo apt install ntpSelle käsuga paigaldatakse ntpd ja sellega seotud failid. Mõnes Ubuntu versioonis võivad vaikimisi olla aktiveeritud chrony või systemd-timesyncd. Sellisel juhul soovitame need eelnevalt keelata või eemaldada.
sudo systemctl stop systemd-timesyncd
sudo systemctl disable systemd-timesyncdTeenuse lubamine ja käivitamise kontroll
Pärast paigaldamist aktiveerige ntpd teenus ja kontrollige selle olekut:
sudo systemctl enable ntp
sudo systemctl start ntp
sudo systemctl status ntpKui status käsu tulemus on „active (running)“, töötab ntpd õigesti.
Algseadete faili ülevaatus ja muutmine
ntpd seadistused on määratud failis /etc/ntp.conf. Vaikimisi seadistuses on kasutusel mitu NTP-serverit (tavaliselt pool.ntp.org aadressid).
Kontrollige failis seadistusi järgmiselt:
cat /etc/ntp.confKui soovite määrata näiteks Eesti või Euroopa servereid, muutke faili nii:
server ee.pool.ntp.org iburstiburst võimaldab kiiremat esmast sünkroniseerimist ja on soovitatav lisada.
Pärast muudatuste tegemist taaskäivitage ntpd teenus:
sudo systemctl restart ntpSüsteemi automaatse ajasünkroniseerimise kontroll
Pärast käivitamist sünkroniseerib ntpd aja automaatselt serveriga, kuid töö kontrollimiseks on kasulik järgmine käsk:
ntpq -pNäete aktiivsete NTP-serverite nimekirja ning viivitust, offset’i jm.
4. NTP-serverite seadistamine ja kohandamine
Soovitatavate NTP-serverite valik
Oluline on valida õiged NTP-serverid. Eesti või Euroopa servereid kasutades on sünkroniseerimine stabiilsem ja kiirem.
Näiteid:
ee.pool.ntp.org(Eesti NTP-klaster)europe.pool.ntp.org(Euroopa NTP-klaster)ntp.nict.jp(Jaapan, vajadusel rahvusvaheliselt)
Neid servereid võib /etc/ntp.conf faili lisada järgmiselt:
server ee.pool.ntp.org iburst
server europe.pool.ntp.org iburst
server ntp.nict.jp iburstntp.conf detailsemad seadistused
/etc/ntp.conf võimaldab veel täpsemaid sätteid. Näiteks:
- restrict direktiiv
Seadistab, kes tohib serveriga ühenduda. Soovitav piirata tarbetuid ühendusi. Näide – luba kohaliku võrgu klientidele:
restrict 192.168.0.0 mask 255.255.255.0 nomodify notrap- driftfile
Määrab faili, kuhu kirjutatakse süsteemi kellaaja kõrvalekalded. Tavaliselt pole vaja muuta.
driftfile /var/lib/ntp/ntp.drift

Kohaliku võrgu NTP-serveri loomine
ntpd-d saab kasutada ka ettevõtte sisevõrgus NTP-serverina, jagades aega teistele masinatele. See on kasulik, kui välisühendus puudub või on vaja ühtset aega paljudel masinatel.
Peamised sammud:
- Lisa
/etc/ntp.conffaili kohaliku võrgu piirangrestrict 192.168.0.0 mask 255.255.255.0 nomodify notrap - Määra klientmasinates serveriks selle masina kohalik IP
server 192.168.0.10 iburst # NTP-serveri lokaalne IP - Ava tulemüüris UDP port 123
sudo ufw allow 123/udp
Kui ühendus on blokeeritud, sünkroniseerimist ei toimu ja ntpq-käsk ei kuva serverit.
5. ntpd töö kontrollimine ja tõrkeotsing
Teenuse staatuse kontrollimine
Kontrolli, kas ntpd töötab:
sudo systemctl status ntpKui näed „active (running)“, töötab kõik korralikult. Kui „inactive“ või „failed“, võib olla seadistusviga või puuduv sõltuvus.
Detailsemat logi näeb käsuga:
journalctl -u ntpNii saab vaadata teenuse käivitamise ajalugu ja veateateid.
Sünkroniseerimise olukorra kontroll ntpq -p käsuga
Kasuta ntpq -p, et näha, kas sünkroniseerimine toimub:
ntpq -pNäide väljundist:
remote refid st t when poll reach delay offset jitter
==============================================================================
*ee.pool.ntp.org .POOL. 2 u 25 64 377 1.123 -0.345 0.024Olulised väljad:
remote: ühendatud NTP-serveri nimist: stratum ehk serveri tasereach: ühenduse edukusdelay: võrgu viivitus (ms)offset: aja nihe (ms)jitter: kõikumine
* tähistab, et see server on hetkel valitud sünkroniseerimiseks.
Levinud vead ja lahendused
Allpool on ntpd seadistamisel sagedamini esinevad vead ja nende lahendused.
1. ntpq -p ei kuva midagi / reach on 0
- Põhjus: tulemüür või ruuter blokeerib UDP porti 123
- Lahendus: kontrolli tulemüüri nii serveris kui kliendis ja luba NTP-liiklus.
sudo ufw allow 123/udp2. Ilmub teade „System clock not synchronized“
- Põhjus: ntpd ei tööta või konkureerib mõne muu sünkroonimisteenusega (nt systemd-timesyncd)
- Lahendus: Keela muud ajateenused ja taaskäivita ntpd.
sudo systemctl disable systemd-timesyncd
sudo systemctl restart ntp3. NTP-serveri nime ei leita
- Põhjus: DNS seaded valed või võrguühendus puudub
- Lahendus: Proovi pingida ntp-serverit ja vajadusel muuda DNS-i seadistust.
4. Kellaaeg on tugevalt vale ja ei sünkroniseeru
- Põhjus: ntpd ei korrigeeri suurt kellavea automaatselt
- Lahendus: Sea aeg käsitsi õigeks ja taaskäivita ntpd.
sudo ntpd -gq # teostab kohese ühekorra sünkroniseerimise
sudo systemctl restart ntpPidev monitooring
Soovitav on automatiseerida ntpq -p väljundi logimine ja häirete tuvastamine. Näiteks kui reach jääb mitmel korral nulliks, saad teavituse ja saad võimalikele tõrgetele kiirelt reageerida.
6. ntpd ja teiste ajasünkroniseerimise tööriistade võrdlus
Peamised ajasünkroniseerimise tööriistad Ubuntus
Ubuntus saab ajasünkroniseerimiseks kasutada mitmeid tööriistu. Kõigil on omad eelised ning sobiv valik sõltub süsteemi eesmärgist ja vajadustest. Kolm levinumat on:
- ntpd (ntp-pakett)
- chrony
- systemd-timesyncd
Olles kursis nende erinevustega, saab valida parima lahenduse just enda süsteemile.
ntpd omadused
- Plussid
- Pikaajaline kasutusajalugu ja stabiilsus, väga usaldusväärne
- Rohked funktsioonid (kohalik NTP-server, autentimine, sümmeetriline töö jne)
- Lai ühilduvus avalike NTP-serveritega, palju infot ja kogemusi kogukonnas
- Miinused
- Aeglane esmasünkroniseerimine
- Mitte kõige sobivam kaasaegsetele virtuaalvõrkudele
chrony omadused
- Plussid
- Väga kiire esmane sünkroniseerimine
- Sobib virtuaalmasinatele, sülearvutitele ja muutuvatele võrkudele
- Automaatsed õppimisfunktsioonid, sageli parem täpsus kui ntpd-l
- Miinused
- Kohaliku NTP-serveri seadistamine keerukam
- Vähem dokumentatsiooni ja kogemusi kui ntpd-l
systemd-timesyncd omadused
- Plussid
- Ubuntu 20.04-st vaikimisi lubatud, väga lihtne paigaldada ja hallata
- Väga väike ressursikulu
- Tihe integratsioon systemd-ga, Ubuntu standardpaigalduses mugav
- Miinused
- Vähe funktsioone, puudub tugi lokaalsele NTP-serverile
- Pigem lihtsakoeline ja ei sobi suurematele süsteemidele
Tööriistade võrdlustabel
| Omadus | ntpd | chrony | systemd-timesyncd |
|---|---|---|---|
| Täpsus | kõrge | väga kõrge | keskmine |
| Esmasünkroniseerimise kiirus | võib olla aeglane | väga kiire | keskmine |
| Kohaliku NTP-serveri võimalus | ◎ | ○ (keerulisem) | × (puudub) |
| Seadistuste paindlikkus | kõrge | keskmine | madal |
| Virtuaalvõrkude tugi | △ | ◎ | ○ |
| Kogemus ja dokumentatsioon | ◎ | ○ | △ |
| Soovitatav kasutus | server, organisatsioonisisesed süsteemid | virtuaalkeskkonnad, sülearvutid | üksikmasinad, algajad |
Soovitused kasutusjuhtude kaupa
- Serverid (eriti pidevalt töötavad)
→ ntpd või chrony – stabiilsus ja täpsus on tähtis. - Pilvekeskkonnad, virtuaalmasinad, sülearvutid
→ chrony – kõige paindlikum ja täpsem. - Üksikmasinad või lihtne sünkroniseerimine
→ systemd-timesyncd on piisav.
7. Korduma kippuvad küsimused (KKK)
K1. Kas ntpd on Ubuntu 22.04-s vaikimisi paigaldatud?
V1.
Ei, Ubuntu 22.04-s pole ntpd vaikimisi kaasas. Standardis on aktiivne systemd-timesyncd, mis pakub lihtsat sünkroniseerimist. Kui soovite kasutada ntpd-d, peate ntp paketi käsitsi paigaldama.
sudo apt install ntpPärast paigaldamist tasub systemd-timesyncd keelata, et vältida konflikte.
K2. ntpq -p ei kuva korralikult tulemusi?
V2.
Põhjuseid võib olla mitu.
- Teenust pole käivitatud: kontrolli käsuga
sudo systemctl status ntpja vajadusel käivita - Pole ühendust NTP-serveriga: tulemüür võib blokeerida UDP porti 123
- Viga seadistusfailis: kontrolli
/etc/ntp.confvõimalikke vigu
Kontrolli alati põhitööd järgmise käsuga:
ntpq -pKui väljund on tühi või reach on 0, võib põhjus olla ühenduse puudumine serveriga.
K3. Kumba valida – ntpd või chrony?
V3.
See sõltub kasutuskeskkonnast.
- Pikaajalised füüsilised serverid või lokaalse NTP-serveri vajadus →
ntpdon stabiilsem - Virtuaalkeskkonnad, sülearvutid või muutuv võrk →
chronyon täpsem ja kiirem - Lihtne ajasünkroniseerimine →
systemd-timesyncdon piisav
K4. Mida teeb ntpd -gq käsk?
V4.ntpd -gq sünkroniseerib aja ühe korra NTP-serveriga ja lõpetab töö.
-g: lubab suure ajavea parandamist-q: sünkroniseerib ühe korra ja väljub
Kui kell on väga valesti ja tavaline ntpd ei suuda seda parandada, võib seda käsku kasutada käsitsi algsünkroniseerimiseks.
K5. Kas on kasu mitme NTP-serveri määramisest?
V5.
Jah, see tagab töökindluse ja varunduse. Kui üks server on maas, kasutatakse teisi ning ajasünkroniseerimine püsib stabiilsena.
Seadistusnäide (/etc/ntp.conf):
server ee.pool.ntp.org iburst
server europe.pool.ntp.org iburst
server ntp.nict.jp iburst8. Kokkuvõte: Stabiilne ajasünkroniseerimine suurendab süsteemi usaldusväärsust
ntpd peamised eelised üle
Ubuntu puhul pole täpne ajasünkroniseerimine pelgalt mugavus – see mõjutab otseselt turvalisust, tõrkeotsingut, logide haldamist ja automatiseeritud protsesside täpsust.
Käesolevas artiklis vaatasime läbi NTP (Network Time Protocol) põhitõed, ntpd-põhise sünkroniseerimise tööpõhimõtted, paigaldamise, seadistamise, töö kontrollimise ning võrdluse teiste tööriistadega.
Soovitused lugejale
Millist ajasünkroniseerimise tööriista kasutada, sõltub Ubuntu süsteemi eesmärgist ja ülesehitusest.
Küll aga kehtib alati põhimõte – ilma täpse ajata pole stabiilset tööd.
- Serverid, kus logihaldus on oluline → seadista kindlasti
ntpdvõichrony - Lihtsate vajaduste korral →
systemd-timesyncdon lihtne ja piisav
Aja täpsus võib igapäevases töös märkamata jääda, kuid probleemide korral osutub see sageli otsustavaks.
Loodan, et see artikkel aitab teil leida parima lahenduse Ubuntu ajasünkroniseerimiseks.



