Installerer ntp i Ubuntu. Et eksempel på opsætning af en lokal NTP-server til at arbejde med NetPing-enheder Overvågning af ntpd-serveren og synkronisering

Anvendelseseksempler

08.12.2014

NetPing-enheder bruger NTP-protokollen til at synkronisere tid. Ved hjælp af denne protokol justerer alle enheder på netværket deres tid i henhold til den angivne server. NetPing-enheder forbundet til internettet kan bruge en offentlig NTP-server, som anbefalet i artikel. Hvis der ikke er adgang til internettet, så kan du oprette en lokal NTP-server. En sådan server kan være enhver computer, der kører Windows OS med en konfigureret tjeneste W32 TidWindows Time Service "). Denne tjeneste har ikke en grafisk grænseflade og konfigureres enten via kommandolinjen eller ved at redigere registreringsdatabasenøgler.

Instruktioner til opsætning af en NTP-server på Windows 7/8/2008/2012

Lad os se på opsætning af en tidstjeneste ved at redigere registreringsdatabasen. Opsætningen er den samme for versioner af Windows 7/8, Windows Server 2008, Windows Server 2012.

For denne indstilling skal du have Windows OS-administratorrettigheder.

Åbn registreringseditoren enten gennem dialogboksen " Udfør", forårsaget af tastekombinationen" Vinde» + « R", eller gennem søgeformularen, hvor vi skriver " regedit».


I den editor, der åbnes, i træmenuen til venstre, åbn "grenen" " HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\W32Time\TimeProviders\NtpServer", hvor vi leder efter nøglen med navnet " Aktiver" Højreklik og vælg "Rediger". Skift nøgleværdien fra 0 1 .


Ved at ændre denne parameter indikerede vi, at denne computer fungerer som en NTP-server. Computeren forbliver samtidig en klient og kan synkronisere sin tid med andre servere på internettet eller det lokale netværk. Hvis du ønsker, at det interne hardwareur skal fungere som en datakilde, skal du ændre værdien af ​​nøgleparameterenAnnoncer flag5 i tråden" HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config».


For at ændringerne træder i kraft, skal vi genstarte tjenesten. Tjenester tilgås via " Kontrolpanel» fra menuen « Start» -> « Kontrolpanel» -> « Administration» -> « Tjenester" Den findes også i søgeformularen, når du indtaster " services.msc" På listen over tjenester, der vises, finder vi den, vi er interesseret i " Windows Time Service" og gennem menuen kaldet op med højre museknap, vælg punktet " Genstart».

Om opsætning og administration af en NTP-server i Windows Server

Alle Windows-operativsystemer siden Windows 2000 har en tidstjeneste W32 Tid. Denne service er designet til at synkronisere systemtid i en organisation. W32Time-tjenesten er ansvarlig for driften af ​​både klient- og serverdelen af ​​tidstjenesten, mens den samme computer samtidigt kan være både en klient og en NTP-server (Network Time Protocol).

Som standard er Windows-tidstjenesten konfigureret som følger:

Når du installerer operativsystemet, starter Windows NTP-klienten og synkroniserer med en ekstern tidskilde;
Når du føjer en computer til et domæne, ændres synkroniseringstypen. Alle klientcomputere og medlemsservere i domænet bruger en domænecontroller til at synkronisere tid, som verificerer deres ægthed;
Når en medlemsserver forfremmes til en domænecontroller, startes en NTP-server på den, som bruger en controller med PDC-emulatorrollen som tidskilde;
PDC-emulatoren, der er placeret i skovens roddomæne, er den primære tidsserver for hele organisationen. Samtidig er det også selv synkroniseret med en ekstern tidskilde.

Denne ordning fungerer i de fleste tilfælde og kræver ikke indgriben. Strukturen af ​​tidstjenesten i Windows behøver dog ikke at følge et domænehierarki, og enhver computer kan udpeges som en pålidelig tidskilde. Som et eksempel vil jeg beskrive opsætning af en NTP-server i Windows Server 2008 R2, selvom proceduren ikke har ændret sig meget siden Windows 2000.

Starter NTP-serveren

Jeg skal straks bemærke, at tidstjenesten i Windows Server (fra 2000 til 2012) ikke har en grafisk grænseflade og konfigureres enten fra kommandolinjen eller ved direkte redigering af systemregistret. Personligt foretrækker jeg den anden metode, så lad os gå til registreringsdatabasen.

Så den første ting, vi skal gøre, er at starte NTP-serveren. Åbn registreringsdatabasen gren
HKLM\System\CurrentControlSet\services\W32Time\TimeProviders\NtpServer.
Her for at aktivere NTP-serverparameter Aktiveret skal indstille værdien 1 .

Efter genstart af NTP-tjenesten er serveren allerede aktiv og kan betjene klienter. Du kan bekræfte dette ved at bruge kommandoen w32tm /query /configuration. Denne kommando viser en komplet liste over serviceparametre. Hvis afsnit NtpServer indeholder strengen Aktiveret: 1, så er alt i orden, tidsserveren kører.

For at NTP-serveren kan betjene klienter, glem ikke at åbne UDP-port 123 på firewallen for indgående og udgående trafik.

Grundlæggende NTP-serverindstillinger

NTP-serveren er blevet aktiveret, nu skal vi konfigurere den. Åbn registreringsdatabasen gren HKLM\System\CurrentControlSet\services\W32Time\Parameters. Her er vi primært interesserede i parameteren Type, som angiver typen af ​​synkronisering. Det kan tage følgende værdier:

NoSync - NTP-serveren er ikke synkroniseret med nogen ekstern tidskilde. Den bruger et ur indbygget i CMOS-chippen på selve serveren;
NTP- NTP-serveren er synkroniseret med eksterne tidsservere, der er angivet i registreringsdatabasen NtpServer;
NT5DS- NTP-serveren synkroniserer i henhold til domænehierarkiet;
AllSync- NTP-serveren bruger alle tilgængelige kilder til synkronisering.

Standardværdien for en computer, der er en del af et domæne, er NT5DS, for en selvstændig computer - NTP.

Og parameter NtpServer, som angiver de NTP-servere, som denne server vil synkronisere tid med. Som standard indeholder denne parameter Microsoft NTP-serveren (time.windows.com, 0x1, om nødvendigt kan du tilføje flere NTP-servere ved at indtaste deres DNS-navne eller IP-adresser adskilt af et mellemrum). Listen over tilgængelige tidsservere kan f.eks. ses.

Du kan tilføje et flag i slutningen af ​​hvert navn (f. 0x1) som definerer tilstanden for synkronisering med tidsserveren. Følgende værdier er tilladt:

0x1– SpecialInterval, brug af et særligt polling-interval;
0x2– UseAsFallbackOnly-tilstand;
0x4– Symmetrisk Aktiv, symmetrisk aktiv tilstand;
0x8– Klient, sender en anmodning i klienttilstand.

Ved brug af SpecialInterval-flaget skal intervalværdien indstilles i nøglen SpecialPollInterval. Når flaget UseAsFallbackOnly er indstillet, informeres tidstjenesten om, at denne server vil blive brugt som backup, og før synkronisering med den, vil der blive foretaget opkald til andre servere på listen. Symmetrisk aktiv tilstand bruges af NTP-servere som standard, og klienttilstand kan bruges i tilfælde af synkroniseringsproblemer. Microsoft anbefaler at indstille parameteren = overalt 0x1.

Vigtig parameter Annoncer flag placeret i registreringsdatabasenøglen HKLM\System\CurrentControlSet\services\W32Time\Config. Den er ansvarlig for, hvordan NTP-serveren annoncerer sig selv og kan tage følgende værdier:

0x0 ( Ikke en tidsserver) - serveren annoncerer ikke sig selv via NetLogon som tidskilde. Den kan svare på NTP-anmodninger, men naboer vil ikke kunne genkende den som en tidskilde;
0x1(Altid tidsserver) - serveren vil altid annoncere sig selv, uanset dens status;
0x2(Automatisk tidsserver) - serveren vil kun annoncere sig selv, hvis den modtager en pålidelig tid fra en anden nabo (NTP eller NT5DS);
0x4(Altid pålidelig tidsserver) - serveren vil altid erklære sig selv som en pålidelig tidskilde;
0x8(Automatisk pålidelig tidsserver) - en domænecontroller bliver automatisk erklæret pålidelig, hvis den er en PDC-emulator af skovens roddomæne. Dette flag gør det muligt for skovens master PDC at hævde sig selv som den autoriserede tidskilde for hele skoven, selv i mangel af kommunikation med upstream NTP-servere. Ingen anden controller eller medlemsserver (som har standardflaget 0x2) kan ikke etablere sig som en pålidelig tidskilde, hvis den ikke kan finde en tidskilde til sig selv.

Betyder Annoncer flag er summen af ​​dets konstituerende flag, for eksempel:

10=2+8 - NTP-serveren erklærer sig selv som en pålidelig tidskilde, forudsat at den selv modtager tid fra en pålidelig kilde eller er roddomænets PDC. Flag 10 er indstillet som standard for både domænemedlemmer og selvstændige servere.

5=1+4 - NTP-serveren erklærer sig altid som en pålidelig tidskilde. For at erklære en medlemsserver (ikke en domænecontroller) som en pålidelig tidskilde, kræves flag 5.

Nå, lad os indstille intervallet mellem opdateringer. Nøglen, der allerede er nævnt ovenfor, er ansvarlig for det SpecialPollInterval, placeret i registreringsdatabasen gren HKLM\System\CurrentControlSet\services\W32Time\TimeProviders\NtpClient. Den er angivet i sekunder og som standard er dens værdi 604800, hvilket er 1 uge. Dette er meget, så det er værd at reducere SpecialPollInterval-værdien til en rimelig værdi, f.eks. 1 time (3600).

Kommandoer til tidsservicestyring W32 Tid:

w32tm /config /update - opdater tjenestekonfigurationen.

w32tm /monitor – find ud af, hvordan systemtiden på denne computer adskiller sig fra tiden på domænecontrolleren eller andre computere. For eksempel: w32tm /monitor /computers:time.nist.gov
w32tm /resync – fremtving synkronisering med den brugte tidsserver.
w32tm /stripchart – viser tidsforskellen mellem den nuværende og den eksterne computer, og kan vise resultatet i grafisk form. For eksempel vil kommandoen w32tm /stripchart /computer:time.nist.gov /samples:5 /dataonly foretage 5 sammenligninger med den angivne kilde og vise resultatet i tekstform.

w32tm /config – kommando, der bruges til at konfigurere NTP-tjenesten. Med dens hjælp kan du indstille listen over brugte tidsservere, typen af ​​synkronisering og meget mere. For eksempel kan du tilsidesætte standardværdierne og konfigurere tidssynkronisering med en ekstern kilde ved hjælp af kommandoen w32tm /config /syncfromflags:manual /manualpeerlist:time.nist.gov /update
w32tm /query - viser de aktuelle tjenesteindstillinger. For eksempel vil kommandoen w32tm /query /source vise den aktuelle tidskilde, og w32tm /query /configuration vil vise alle serviceparametre.
w32tm /unregister - fjerner tidstjenesten fra computeren
w32tm /register – registrerer tidstjenesten på pc'en, hele grenen af ​​parametre i registreringsdatabasen oprettes på ny.

I kontakt med

...i et Active Directory-miljø resulterer urforskelle på mere end 5 minutter i Kerberos-godkendelsesproblemer...

I denne note vil vi tale om opsætning af tidssynkronisering i et Windows 2008 – 2012 R2 domænemiljø.
Grundlaget for den normale funktion af et AD-domænemiljø er den korrekte drift af Windows Time-tjenesten (W32Time).

Hvordan fungerer tidssynkronisering i et domænemiljø?

1. brugere modtager den nøjagtige tid fra den nærmeste domænecontroller, som de er registreret på;
2. alle domænecontrollere anmoder om dette fra en DC med PDC-emulator-rollen (en af ​​FSMO-rollerne);
3. PDC-emulatoren skal til gengæld synkroniseres med en mere autoritativ tidskilde;
I praksis er PDC-emulatoren normalt synkroniseret med en dedikeret NTP-server i organisationen eller med udbyderens NTP-server eller med en ekstern kilde til nøjagtig tid, såsom: 0.ru.pool.ntp.org, 1 .ru.pool.ntp org, 2.ru.pool.ntp.org

Et eksempel på konfiguration af en domænecontroller med PDC-emulatorrollen.

For at konfigurere har vi brug for en konsol PowerShell lanceret som administrator.
1. Bestem navnet på PDC-emulatoren - den nemmeste måde at udføre kommandoen på:

Når vi har koblet til en DC med PDC-rollen, kan vi begynde at konfigurere.
2. Konfigurer eksterne synkroniseringskilder - angiv hvilke kilder PDC'en vil synkronisere med.

w32tm /config /syncfromflags:manual /manualpeerlist:"0.ru.pool.ntp.org 1.ru.pool.ntp.org 2.ru.pool.ntp.org"

hvor, parametre:
/syncfromflags:manual— synkronisering med noder fra en manuelt specificeret liste.
manuel peerliste:<узлы> — liste (DNS- eller IP-adresser) over tidskilder

Vigtig! Navnet på hver tidskilde (hvis der er mere end én) skal adskilles af et mellemrum. Og firewallen skal tillade UDP-trafik på port 123 at passere i begge retninger.

3. Vi erklærer PDC-emulator for en pålidelig tidskilde for kunder:
w32tm /config /reliable:yes
4. Efter at have foretaget ændringer, genstart tidstjenesten:

Restrat-Service W32Time

Eller opdater konfigurationen med kommandoen: w32tm /config /update

Hvis du har overført PDC-emulatorrollen til en anden domænecontroller, så betragter den gamle DC stadig sig selv som en autoritativ tidsserver for hele domænet, hvilket kan forårsage fejl i systemloggene. Du kan løse denne situation med kommandoen:
w32tm /config /syncfromflags:domhier /reliable:no /update

Et par, efter min mening, nyttige kommandoer:

w32tm /query /konfiguration— se de aktuelle tidsserviceindstillinger;

Hvor:

SpecialPollInterval: 3600- synkroniseringsinterval i sekunder, 3600 – dag. Synkronisering vil blive udført én gang dagligt.
NtpServer- angiver de servere, som computeren kan synkronisere tid med.
Type: NTP– type tidssynkronisering.
Typeparameteren kan have følgende parametre:
NoSync— tidstjenesten synkroniserer ikke med noget som helst.
NTP— tidstjenesten er synkroniseret med de servere, der er angivet i parameteren NtpServer.
NT5DS— tidstjenesten synkroniseres ved hjælp af domænehierarkiet (typisk for Active Directory-domænemedlemmer).
AllSync— tidstjenesten bruger alle mulige mekanismer til synkronisering.

w32tm/skærm— viser det aktuelle tidssynkroniseringshierarki efter domæne;
w32tm /stripchart /computer:0.ru.pool.ntp.org /samples:5 /dataonly— gør 5 forsøg på at sammenligne tid med en autoritativ tidskilde 0.ru.pool.ntp.org ( nyttigt, når du tjekker tilgængeligheden af ​​en tidskilde);
w32tm/resync– tvinge computeren til at synkronisere med den tidsserver, den bruger;
w32tm/afregistrer- fjerner tidstjenesten fra computeren;
w32tm/register– registrerer tidstjenesten på computeren;
Hvis nogen er interesseret i at sætte en NTP-server op gennem registreringsdatabasen, så er du velkommen til denne tråd: HKLM\System\CurrentControlSet\services\W32Time\

Niveaukoncept STRATA eller STRATUM


Hvor:
Stratum 0– reference eller autoritative kilder til nøjagtig tid, såsom: GPS-rejsende, cæsium-atomure, WWVB-radiobølger. De er autoritative, fordi de har en måde at opretholde meget nøjagtig tidtagning - hvor et sekund ikke vil gå tabt om 300.000 år.
Stratum 1– computere, der direkte tager tid fra Stratum 0, dvs. Stratum 1 bruger en hardware (kablet) forbindelse til Stratum 0!
Stratum 2– niveauet af computere, der tager tid over netværket fra Stratum 1.
Som det sandsynligvis allerede fremgår af diagrammet, Stratum 3 vil tage tid fra Stratum 2, A Stratum 4Stratum 3 etc. De laveste niveauer er Lag 16 og tiden i den anses for ikke at være synkroniseret.
Igen, i praksis er de mest almindelige eksterne tidskilder Stratum 2, Stratum 3, fordi at synkronisere med Stratum 1 almindelige brugere er ikke tilladt, og det nytter ikke noget at gøre det.

Network Time Protocol er en netværksprotokol til synkronisering af en computers interne ur ved hjælp af netværk med variabel latenstid baseret på pakkeskift.

Selvom NTP traditionelt bruger UDP til at fungere, er den også i stand til at køre over TCP. NTP-systemet er ekstremt modstandsdygtigt over for ændringer i medieforsinkelse.

Tid er repræsenteret i NTP-systemet som et 64-bit tal, der består af en 32-bit sekundtæller og en 32-bit brøksekundtæller, hvilket gør det muligt at transmittere tid i intervallet 2-32 sekunder med en teoretisk nøjagtighed på 2-32 sekunder. Da tidsskalaen i NTP gentages hvert 2. 32. sekund (136 år), skal modtageren mindst tilnærmelsesvis kende den aktuelle tid (med en nøjagtighed på 68 år). Bemærk også, at tiden måles fra midnat den 1. januar 1900, ikke 1970, så næsten 70 år (inklusive skudår) skal trækkes fra NTP-tiden for at matche tiden korrekt med Windows- eller Unix-systemer.

Hvordan det virker

NTP-servere fungerer i et hierarkisk netværk, hvert niveau i hierarkiet kaldes et stratum. Tier 0 er repræsenteret af referenceuret. Standarden er taget fra GPS-signalet (Global Positioning System) eller ACTS-tjenesten (Automated Computer Time Service). På nulniveauet virker NTP-servere ikke.

Tier 1 NTP-servere henter tidsinformation fra et referenceur. Tier 2 NTP-servere er synkroniseret med Tier 1-servere. Der kan være op til 15 niveauer i alt.

NTP-servere og NTP-klienter henter tidsdata fra Tier 1-servere, selvom det i praksis er bedre for NTP-klienter ikke at gøre dette, da tusindvis af individuelle klientanmodninger vil være for meget af en byrde for Tier 1-servere en lokal NTP-server, som dine klienter vil bruge til at indhente tidsoplysninger.

Den hierarkiske struktur af NTP-protokollen er fejltolerant og redundant. Lad os se på et eksempel på hans arbejde. To Tier 2 NTP-servere synkroniseres med seks forskellige Tier 1-servere, hver på en uafhængig kanal. Interne noder synkroniseres med interne NTP-servere. De to Tier 2 NTP-servere koordinerer tiden med hinanden. Hvis linket til en Tier 1-server eller en af ​​Tier 2-serverne mislykkes, overtager den redundante Tier 2-server synkroniseringsprocessen.

Ligeledes kan Tier 3-noder og -enheder bruge enhver af Tier 2-serverne. Hvad der er vigtigere er, at det at have et redundant netværk af NTP-servere sikrer, at tidsservere altid er tilgængelige. Ved at synkronisere med flere tidsservere bruger NTP data fra alle kilder til at beregne den mest nøjagtige tid.

Det er værd at bemærke, at NTP-protokollen ikke sætter tid i sin rene form. Den justerer det lokale ur ved hjælp af en tidsforskydning, forskellen mellem tiden på NTP-serveren og det lokale ur. NTP-servere og -klienter justerer deres ure og synkroniserer med det aktuelle tidspunkt gradvist eller på én gang.

NTP er en netværkstidssynkroniseringsprotokol. I det væsentlige spørger klienter serveren om det aktuelle klokkeslæt og bruger det til at indstille deres eget ur.

Denne enkle beskrivelse skjuler mange kompleksiteter - der er niveauer af NTP-servere, hvor det første niveau er forbundet til et atomur, og det andet og tredje niveau af servere fordeler belastningen på aktuelle anmodninger fra internettet. Derudover er klientapplikationen mere kompleks, end du måske tror - den kompenserer for forbindelsesforsinkelser og justerer timingen for ikke at skade andre processer, der kører på serveren. Men heldigvis er al denne kompleksitet skjult for dig!

Ubuntu bruger ntpdate og ntpd.

ntpdate

Ubuntu leveres som standard med ntpdate og vil køre det én gang ved hver opstart for at indstille tiden mod Ubuntu NTP-serveren.

Ntpdate -s ntp.ubuntu.com

ntpd

NTP ntpd-tjenesten beregner driften af ​​dit systemur og justerer det konstant, så der er ingen store ændringer, der kan føre til inkonsistente logfiler. Omkostningerne ved dette er et lille forbrug af processorkraft og RAM, men for en moderne server er dette ikke væsentligt.

Installation

For at installere ntpd fra en terminal skal du indtaste:

Sudo apt-get install ntp

Indstillinger

Rediger /etc/ntp.conf for at tilføje/fjerne servere. Disse servere er som standard:

# Brug servere fra NTP-poolprojektet. Godkendt af Ubuntu Technical Board # den 2011-02-08 (LP: #104525). Se http://www.pool.ntp.org/join.html for # flere oplysninger. server 0.ubuntu.pool.ntp.org server 1.ubuntu.pool.ntp.org server 2.ubuntu.pool.ntp.org server 3.ubuntu.pool.ntp.org

Efter at have ændret konfigurationsfilen, skal du genstarte ntpd:

Sudo service ntp genstart

Se status

Brug ntpq for at se yderligere oplysninger:

# sudo ntpq -p remote refid st t når afstemningens rækkevidde forsinkelse offset jitter =================================== = ================================================= ========= +stratum2-2.NTP. 129.70.130.70 2 u 5 64 377 68.461 -44.274 110.334 +ntp2.m-online.n 212.18.1.106 2 u 5 64 377 54.629 -27.4818 *7.629 -27.628 Fa. 1 u 10 64 377 83.607 -30.159 68.343 +stratum2-3.NTP. 129.70.130.70 2 u 5 64.357 68.795 -68.168 104.612 +europium.canoni 193.79.237.14 2 u 63 64.337 81.534 -67.979 2