Sådan konfigureres NTP til brug i NTP Pool-projektet på CentOS 7

introduktion

nøjagtig tidsopbevaring er afgørende for næsten enhver tjeneste eller Program. E-mails, loggere, begivenhedssystemer og planlæggere, brugergodkendelsesmekanismer og tjenester, der kører på distribuerede platforme, har alle brug for nøjagtige tidsstempler for at registrere begivenheder i kronologisk rækkefølge. Disse tjenester bruger Netværkstidsprotokollen eller NTP til at synkronisere systemuret med en pålidelig ekstern kilde. Denne kilde kan være et atomur, en GPS-modtager eller en anden tidsserver, der allerede bruger NTP.

det er her NTP Pool Project-projektet kommer i spil. Det er en enorm verdensomspændende klynge af tidsservere, der giver nem adgang til kendt “god tid” for titusinder af klienter over hele verden. Det er standardtidsserveren for Ubuntu og de fleste af de andre store distributioner, såvel som mange netværksapparater og programmer.

i denne vejledning konfigurerer du NTP på din server og konfigurerer den til at være en del af NTP Pool-projektet, så det giver nøjagtig tid til andre brugere af NTP Pool-projektet. At give dine ekstra CPU-cyklusser og ubrugt båndbredde er en perfekt måde at give noget tilbage til samfundet.

den krævede båndbredde er relativt lav og kan justeres afhængigt af det beløb, du kan angive, og hvor din server er bosat. Hver klient sender kun et par UDP-pakker hvert 20.minut, så de fleste servere modtager kun omkring et dusin NTP-pakker pr. Dette svarer til båndbreddebrug på 10-15 KB/sek med pigge på 50-120 KB/sek.

der er tre grundlæggende krav, du skal opfylde, før du tilmelder dig NTP Pool-projektet:

  1. din server skal have en statisk IP-adresse.
  2. din server skal have en permanent og stabil internetforbindelse.
  3. din IP-adresse ændres mest ikke, eller ændres kun sjældent (en gang om året eller mindre).

for de fleste skybaserede servere opfyldes de to første krav normalt automatisk. Det tredje krav understreger, at tilslutning til NTP Pool-projektet udgør en langsigtet forpligtelse. Selvfølgelig, hvis dine omstændigheder ændrer sig, er det fint at tage en server ud af poolen, men det vil tage lang tid (for det meste uger, men nogle gange måneder eller endda år), før trafikken helt forsvinder.

forudsætninger

for at fuldføre denne tutorial skal du:

  • en Centos 7 server med IPv6 netværk konfigureret. Hvis du har brug for at konfigurere IPv6-netværk på en eksisterende dråbe, kan du følge denne vejledning.
  • en sudo-ikke-root-bruger og en brandvæg, som du kan konfigurere ved at følge den indledende serveropsætning med CentOS 7-tutorial og afsnittet “Konfiguration af en grundlæggende Brandvæg” i de yderligere anbefalede trin til Ny CentOS 7-Servervejledning.

Trin 1 — installation af NTP

NTP-pakken er ikke installeret som standard, så du bruger pakkehåndteringen til at installere den. Opdater først dine pakker:

  • sudo yum update

installer derefter NTP:

  • sudo yum install ntp

når installationen er færdig, skal du starte tjenesten og konfigurere den, så den starter automatisk, hver gang serveren starter:

  • sudo systemctl start ntpd
  • sudo systemctl enable ntpd

hvis du har konfigureret brandmuren som angivet i forudsætningerne, skal du tillade UDP-trafik for NTP-tjenesten for at kommunikere med NTP-puljen:

  • sudo firewall-cmd --permanent --add-service=ntp
  • sudo firewall-cmd --reload

se, hvordan du opretter en brandmur ved hjælp af brandmur på CentOS 7 for at få flere oplysninger om brandmur.

NTP er nu installeret, men det er konfigureret til at bruge standard NTP pool tid servere. Lad os vælge nogle specifikke tidsservere i stedet.

Trin 2 — Valg af en passende Opstrømsserver

NTP Pool-projektet beder operatører, der ønsker at deltage i puljen, om at vælge gode netværk-lokale tidsservere i stedet for at bruge standard pool.ntp.org servere. Dette sikrer, at NTP Pool-projektet forbliver pålideligt, hurtigt og sundt. Når du vælger din tidskilde, vil du have en stabil netværksforbindelse uden pakketab og så få humle som muligt mellem serverne.

den multi-differentierede og hierarkiske NTP-protokol adskiller de involverede parter i primære servere, sekundære servere og klienter. De primære servere kaldes Stratum 1 og er forbundet direkte til tidskilden, som kaldes Stratum 0. Denne kilde kan være et atomur, en GPS-modtager eller et radionavigationssystem. Sekundære servere i kæden kaldes Stratum 2, Stratum 3 og så videre.

hver server er også en klient. En Stratum 2-klient modtager tid fra en opstrøms Stratum 1-server og giver tid til nedstrøms Stratum 3-servere eller andre klienter. For at NTP Pool-projektmedlemmer skal fungere korrekt, har NTP-dæmonen brug for mindst tre servere konfigureret. Projektet anbefaler mindst fire og ikke mere end syv kilder.

NTP Pool-projektet indeholder en liste over offentlige Stratum 1-og Startum 2-tidsservere. Listerne angiver de NTP-tidsservere, der er tilgængelige for offentlig adgang under angivne begrænsninger. Du finder tre typer:

  • OpenAccess: denne tidsserver er åben for enhver klient, der overholder NTP-Poolbrugsanbefalingerne.
  • RestrictedAccess: denne tidsserver har nogle adgangsbegrænsninger ud over NTP-Poolbrugsanbefalingerne.
  • Lukketadgang: Denne tidsserver er lukket eller kræver forudgående aftale.

Advarsel: Brug ikke servere, der ikke er angivet som OpenAccess, medmindre du har modtaget godkendelse til at gøre det.

besøg listen over stratum 1-tidsservere. Du vil se en liste som følgende:

Stratum 1-servere

Sorter listen efter kolonnen ISO-kode, og find en eller to servere, der er geografisk tæt på din servers datacenter. Når serverens Adgangspolitiks kolonne angiver OpenAccess, kan du bruge den uden problemer. Hvis der står “RestrictedAccess”, skal du klikke for at åbne posten og læse instruktionerne i feltet AccessDetails. Tit, du vil opdage, at NotificationMessage er indstillet til Ja, hvilket betyder, at du er nødt til at udforme en uformel e-mail rettet til den adresse, der er angivet i ServerContact, informere serveroperatøren om dit ønske om at bruge denne tidsserver som en tidskilde til dit NTP Pool-projektmedlem.

når du har identificeret de servere, du vil bruge, skal du klikke på linket for hver server i ISO-kolonnen og kopiere dens værtsnavn eller IP-adresse. Du bruger disse adresser i Trin 3.

vælg derefter tre eller fire servere fra Stratum 2-listen efter den samme proces.

når du har valgt dine tidsservere, er det tid til at konfigurere din NTP-klient til at bruge dem.

Trin 3 — konfiguration af NTP til at deltage i puljen

for at bruge din server med NTP-puljen og konfigurere dine nye tidsservere skal du foretage nogle ændringer af din NTP-dæmons konfiguration. For at gøre det skal du redigere /etc/ntp.conf filen:

  • sudo vi /etc/ntp.conf

først skal du sørge for, at en driftfile er konfigureret. En driftfile gemmer frekvensforskydningen mellem systemuret, der kører ved dets nominelle frekvens, og den frekvens, der kræves for at forblive i synkronisering med korrekt tid. Det hjælper med at opnå en stabil og præcis tid. Du skal finde dette øverst i din konfigurationsfil på en standardinstallation:

/etc/ntp.conf
# For more information about this file, see the man pages# ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5).driftfile /var/lib/ntp/drift...

fjern derefter standardtidskildeposterne fra konfigurationen. Du leder efter alle linjer, der er af mønsteret server 0.centos.pool.ntp.org iburst. Hvis du bruger en standardkonfiguration, skal du fjerne de fremhævede linjer som vist i følgende eksempel:

/etc/ntp.conf
...# Use public servers from the pool.ntp.org project.# Please consider joining the pool (http://www.pool.ntp.org/join.html).server 0.centos.pool.ntp.org iburstserver 1.centos.pool.ntp.org iburstserver 2.centos.pool.ntp.org iburstserver 3.centos.pool.ntp.org iburst

Udskift de linjer, du fjernede, med de håndplukkede servere, du valgte i det foregående trin.

/etc/ntp.conf
...server ntp_server_hostname_1 iburstserver ntp_server_hostname_2 iburstserver ntp_server_hostname_3 iburstserver ntp_server_hostname_4 iburstserver ntp_server_hostname_5 iburst...

vi bruger iburst mulighed for hver servere, pr NTP Pool anbefalinger. På den måde, hvis serveren ikke kan nås, sender dette en burst på otte pakker i stedet for den sædvanlige en pakke. Brug af burst i NTP Pool-projektet betragtes som misbrug, da det sender de otte pakker hvert afstemningsinterval, mens iburst kun sender de otte pakker første gang.

sørg derefter for, at standardkonfigurationen ikke tillader ledelsesforespørgsler. Hvis du ikke gør det, kan din server bruges i NTP-refleksionsangreb eller være sårbar over for ntpq og ntpdc forespørgsler, der forsøger at ændre serverens tilstand. Kontroller, at noquery er føjet til standardlinjerne restrict. Sørg også for at tilføje indstillingerne kod og limited, da de begrænser for ivrigt at spørge klienter og håndhæve hastighedsbegrænsning.

/etc/ntp.conf
...# Permit time synchronization with our time source, but do not# permit the source to query or modify the service on this system.restrict default nomodify notrap nopeer noquery kod limited# Permit all access over the loopback interface. This could# be tightened as well, but to do so would effect some of# the administrative functions.restrict 127.0.0.1restrict ::1

du kan finde mere information om de andre muligheder i den officielle dokumentation.

din NTP-daemon-konfigurationsfil skal nu se ud som følgende, selvom din fil muligvis har yderligere kommentarer, som du sikkert kan se bort fra:

/etc/ntp.conf
driftfile /var/lib/ntp/ntp.driftrestrict default nomodify notrap nopeer noquery kod limitedrestrict 127.0.0.1restrict ::1server ntp_server_hostname_1 iburstserver ntp_server_hostname_2 iburstserver ntp_server_hostname_3 iburstserver ntp_server_hostname_4 iburstserver ntp_server_hostname_5 iburst

Gem filen og afslut editoren.

Genstart nu NTP-tjenesten, og lad din tidsserver synkronisere sit ur til opstrøms-serverne.

  • sudo systemctl restart ntpd

efter et par minutter skal du kontrollere sundheden for din tidsserver med kommandoen ntpq :

  • ntpq -p

udgangen skal se ud som dette:

Output
remote refid st t when poll reach delay offset jitter============================================================================== mizbeaver.udel. .INIT. 16 u - 64 0 0.000 0.000 0.000 montpelier.ilan .GPS. 1 u 25 64 7 55.190 2.121 130.492+nist1-lnk.binar .ACTS. 1 u 28 64 7 52.728 23.860 3.247*ntp.okstate.edu .GPS. 1 u 31 64 7 19.708 -8.344 6.853+ntp.colby.edu .GPS. 1 u 34 64 7 51.518 -5.914 6.669

fjernkolonnen fortæller dig værtsnavnet på de servere, NTP-dæmonen bruger, og refid-kolonnen fortæller dig, hvilken kilde serverne bruger. Så for Stratum 1-servere skal refid-feltet vise GPS, PPS, ACTS eller PTB, og Stratum 2 og højere servere viser IP-adressen på opstrømsserveren. St-kolonnen viser stratum, og delay, offset og jitter fortæller dig om kvaliteten af tidskilden. Lavere værdier er bedre for disse tre felter.

din tidsserver er nu i stand til at tjene tid til offentligheden. Du kan bekræfte dette ved at ringe ntpdate fra en anden vært:

  • ntpdate -q your_server_ip

udgangen skal ligne dette, og det fortæller dig, at det justerede tidsserveren og forskydningen:

Output
server your_server_ip, stratum 2, offset 0.001172, delay 0.16428 2 Mar 23:06:44 ntpdate: adjust time server your_server_ip offset 0.001172 sec

du er nu klar til at registrere din NTP-server med NTP Pool-projektet, så andre kan bruge det.

Trin 4-Tilføjelse af serveren til NTP-puljen

for at tilføje din server, så andre kan bruge den, Besøg manage.ntppool.org og tilmeld dig en konto. Du modtager en e-mail fra NTP Pool [email protected] anmoder om, at du bekræfter din konto. Bekræft din konto ved at følge instruktionerne i e-mailen, og log derefter på manage.ntppool.org.

når du er logget ind, kan du se den enkle grænseflade til tilføjelse af servere:

Tilføj en server

Indtast din servers IP-adresse, og klik på Send.

det næste skærmbillede beder dig om at kontrollere, at det identificerede regionen på din server. Hvis den viser din server i en anden region, end du forventer, skal du bruge kommentarfeltet til at fortælle dem det.

verifikationsskærmen

hvis du er tilfreds, Bekræft posten ved at klikke på Ja, Dette er min server, tilføj det!

din server er nu en del af NTP Pool-projektet. Besøg http://www.pool.ntp.org/scores/your_server_ip for at se oplysninger, som NTP-poolens overvågningssystem har indsamlet om din server. Det kontrollerer din server et par gange i timen og viser offset data, alog med score på dit system. Så længe din server holder god tid og kan nås, vil scoren stige, indtil den når 20 point. Kun servere med en score højere end 10 bruges i poolen.

fejlfinding forbindelsesproblemer

hvis du har problemer med at få din server til at synkronisere, kan du have en pakke brandvæg på plads slippe dine udgående pakker på port 123. Tag et kig på, hvordan du opretter en brandmur ved hjælp af brandmur på CentOS 7 for at lære at kontrollere status for brandmuren.

hvis NTP-Poolprojektets overvågningsstation ikke kan nå din NTP-server, og din server score går ned, eller du ikke kan bruge din server til at synkronisere et andet ur, har du muligvis en pakke brandvæg på plads, der taber din indgående trafik på port 123. Tjek din brandmur status.

hvis du er sikker på, at du ikke har nogen brandvæg på plads, eller du har åbnet port 123 for både indgående og udgående trafik, kan din serverudbyder eller en anden transitudbyder muligvis droppe dine pakker undervejs. Hvis du ikke har viden til at løse disse problemer alene, er det bedst at vende sig til samfundet og nå ud til hjælp. NTP Pool Projects forum er et godt sted at starte. Du kan også deltage i mailinglisten eller sende en emaill til NTP Pool-projektoperatøren. Bare vær sikker på at du kan vise alle de trin, du allerede har forsøgt at løse problemet, før du beder om hjælp.

konklusion

i denne vejledning har du oprettet din egen tidsserver og gjort den til medlem af NTP Pool-projektet, der serverer tid til samfundet. At holde kontakten med det tidsholdende samfund. Deltag i NTP Pool Projects forum eller mailinglisten. Sørg for at overvåge din server score og foretage de nødvendige justeringer.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.

Previous post Arnold Palmer Invitational tidligere vindere
Next post National ret til at arbejde Foundation ret til at arbejde stater: Florida