Johdanto
tarkka ajankäyttö on kriittistä lähes mille tahansa palvelulle tai ohjelmistolle. Sähköpostit, loggerit, tapahtumajärjestelmät ja aikataulut, käyttäjien todennusmekanismit ja hajautetuilla alustoilla toimivat palvelut tarvitsevat kaikki tarkat aikaleimat tallentaakseen tapahtumat aikajärjestyksessä. Nämä palvelut käyttävät verkon Aikaprotokollaa eli NTP: tä synkronoidakseen järjestelmän kellon luotettavan ulkoisen lähteen kanssa. Tämä lähde voi olla atomikello, GPS-vastaanotin tai muu aikapalvelin, joka käyttää jo NTP: tä.
tässä vaiheessa NTP-Pool-projekti astuu kuvaan. Se on valtava maailmanlaajuinen aikapalvelimien klusteri, joka tarjoaa helpon pääsyn tunnettuun” hyvään aikaan ” kymmenille miljoonille asiakkaille ympäri maailmaa. Se on oletusaikapalvelin Ubuntulle ja suurimmalle osalle muista suurista Linux-jakeluista sekä monille verkotetuille laitteille ja ohjelmistosovelluksille.
tässä oppaassa määrität NTP: n palvelimellesi ja määrität sen osaksi NTP Pool-projektia, joten se tarjoaa tarkan ajan muille NTP Pool-projektin käyttäjille. Ylimääräisen PROSESSORISYKLIN ja käyttämättömän kaistanleveyden tarjoaminen on täydellinen tapa antaa jotain takaisin yhteisölle.
tarvittava kaistanleveys on suhteellisen pieni, ja sitä voidaan säätää sen mukaan, kuinka paljon voit tarjota ja missä palvelimesi sijaitsee. Jokainen asiakas lähettää vain pari UDP-pakettia 20 minuutin välein, joten useimmat palvelimet saavat vain kymmenkunta NTP-pakettia sekunnissa, piikeillä pari kertaa päivässä jopa sata pakettia sekunnissa. Tämä tarkoittaa kaistanleveyden käyttöä 10-15kb/s piikkejä 50-120kb / s.
on kolme perusvaatimusta, jotka sinun on täytettävä ennen liittymistä NTP Pool-projektiin:
- palvelimellasi on oltava staattinen IP-osoite.
- palvelimellasi on oltava pysyvä ja vakaa internet-yhteys.
- IP-osoitteesi ei useimmiten muutu tai muuttuu vain harvoin (kerran vuodessa tai harvemmin).
useimmilla pilvipohjaisilla palvelimilla kaksi ensimmäistä vaatimusta täyttyvät yleensä automaattisesti. Kolmas vaatimus korostaa, että liittyminen NTP-Pool-hankkeeseen on pitkäaikainen sitoumus. Tietenkin, jos olosuhteet muuttuvat, Se on hieno ottaa palvelimen pois allas, mutta se kestää kauan (enimmäkseen viikkoja, mutta joskus kuukausia tai jopa vuosia) ennen kuin liikenne kokonaan katoaa.
Edeltävät opinnot
tämän opetusohjelman suorittamiseen tarvitset:
- yksi Centos 7-palvelin, jossa on IPv6-verkko. Jos haluat määrittää IPv6 networkingin exising-pisaralla, voit seurata tätä opetusohjelmaa.
- sudo Ei-root-käyttäjä ja palomuuri, jonka voit määrittää noudattamalla CentOS 7-opetusohjelman alustavaa Palvelinasetusta ja ”Configuring a Basic Firewall” – osiota uusien CentOS 7-palvelimien opetusohjelman Suositusvaiheissa.
Vaihe 1 — NTP: n asentaminen
NTP-pakettia ei ole oletusarvoisesti asennettu, joten asennukseen käytetään paketinhallintaa. Päivitä ensin pakettisi:
- sudo yum update
asenna NTP:
- sudo yum install ntp
kun asennus on valmis, käynnistä palvelu ja määritä se niin, että se käynnistyy automaattisesti aina, kun palvelin käynnistyy:
- sudo systemctl start ntpd
- sudo systemctl enable ntpd
jos olet määrittänyt palomuurin edellytysten mukaisesti, sinun on sallittava UDP-liikenne NTP-palvelulle, jotta voit kommunikoida NTP-poolin kanssa:
- sudo firewall-cmd --permanent --add-service=ntp
- sudo firewall-cmd --reload
lisätietoja FirewallD, katso miten perustaa palomuuri käyttäen FirewallD CentOS 7.
NTP on nyt asennettu, mutta se on määritetty käyttämään NTP-pooliaikapalvelimia. Lets valita joitakin tiettyjä aikapalvelimia sijaan.
Vaihe 2-sopivan alkupään palvelimen valitseminen
NTP-Pool-projekti pyytää operaattoreita, jotka haluavat liittyä pooliin, valitsemaan hyvät verkko-paikalliset aikapalvelimet oletusarvon pool.ntp.org
palvelimien sijaan. Näin varmistetaan, että NTP Pool-projekti pysyy luotettavana, nopeana ja terveenä. Kun valitset aikalähteesi, haluat vakaan verkkoyhteyden ilman pakettihäviöitä ja mahdollisimman vähän hyppyjä palvelimien välillä.
monitasoinen ja hierarkkinen NTP-protokolla erottaa osapuolet ensisijaisiin palvelimiin, toissijaisiin palvelimiin ja asiakkaisiin. Ensisijaisia palvelimia kutsutaan Stratum 1: ksi ja ne on kytketty suoraan ajan lähteeseen, jota kutsutaan Stratum 0: ksi. Tämä lähde voi olla atomikello, GPS-vastaanotin tai radionavigointijärjestelmä. Ketjun toissijaisia palvelimia kutsutaan Stratum 2: ksi, Stratum 3: ksi ja niin edelleen.
jokainen palvelin on myös asiakas. Osite 2-asiakas saa aikaa yläjuoksun Osite 1-palvelimelta ja tarjoaa aikaa alajuoksun Osite 3-palvelimille tai muille asiakkaille. Jotta NTP Pool-projektin jäsenet toimisivat oikein, NTP-taustaprosessi tarvitsee vähintään kolme määritettyä palvelinta. Hanke suosittelee vähintään neljää ja enintään seitsemää lähdettä.
NTP-Pool-projekti sisältää luettelon julkisista Ositteista 1 ja Startum 2 aikapalvelimista. Luetteloissa nimetään NTP-aikapalvelimet, jotka ovat julkisesti saatavilla ilmoitettujen rajoitusten mukaisesti. Löydät kolme tyyppiä:
- OpenAccess: tämä aikapalvelin on avoinna kaikille asiakkaille, jotka noudattavat NTP-Poolin käyttösuosituksia.
- rajoitettu pääsy: tällä aikapalvelimella on joitakin käyttörajoituksia NTP-Poolin käyttösuositusten lisäksi.
- suljettu pääsy: Tämä aikapalvelin on suljettu tai vaatii etukäteen järjestelyn.
Varoitus: Älä käytä palvelimia, joita ei ole OpenAccess-luettelossa, ellet ole saanut siihen lupaa.
käy Stratum 1-aikapalvelimien luettelossa. Näet seuraavan kaltaisen listan:
Järjestä luettelo ISO-koodisarakkeen mukaan ja etsi yksi tai kaksi palvelinta, jotka ovat maantieteellisesti lähellä palvelimesi datakeskusta. Kun palvelimen Käyttöoikeuskäytäntö-sarakkeessa lukee OpenAccess, voit käyttää sitä ilman ongelmia. Jos siinä lukee ”RestrictedAccess”, avaa merkintä napsauttamalla ja lue ohjeet, jotka on merkitty AccessDetails-kenttään. Usein, huomaat, että NotificationMessage on asetettu kyllä, mikä tarkoittaa, että sinun täytyy veneet epävirallinen Sähköposti suunnattu osoitteeseen ServerContact, ilmoittaa palvelimen operaattori halustasi käyttää tätä aikapalvelinta aikalähteenä Oman NTP Pool projektin jäsen.
kun olet tunnistanut haluamasi palvelimet, napsauta kunkin palvelimen iso-sarakkeessa olevaa linkkiä ja kopioi palvelimen nimi tai IP-osoite. Käytät näitä osoitteita vaiheessa 3.
valitse seuraavaksi Osite 2-luettelosta kolme tai neljä palvelinta saman prosessin mukaisesti.
kun olet valinnut aikapalvelimesi, on aika määrittää NTP-asiakkaasi käyttämään niitä.
Vaihe 3 — NTP: n määrittäminen liittymään Pooliin
käyttääksesi palvelinta NTP-poolin kanssa ja määrittääksesi uudet aikapalvelimet, sinun on tehtävä joitakin muutoksia NTP-palvelimen asetuksiin. Voit tehdä niin muokkaamalla /etc/ntp.conf
– tiedostoa:
- sudo vi /etc/ntp.conf
varmista ensin, että ajotila on määritetty. Driftfile tallentaa taajuuspoikkeaman järjestelmän kellon käynnissä sen nimellistaajuudella,ja taajuus tarvitaan pysyä synkronoinnin oikean ajan. Se auttaa saavuttamaan vakaan ja tarkan ajan. Tämä löytyy oletusasennuksen asetustiedoston yläreunasta:
# 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...
poista seuraavaksi aikalähteen oletusmerkinnät asetuksista. Etsit kaikkia viivoja, jotka ovat kaavaa server 0.centos.pool.ntp.org iburst
. Jos käytät oletusasetusta, poista korostetut rivit seuraavassa esimerkissä esitetyllä tavalla:
...# 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
korvaa poistetut rivit edellisessä vaiheessa valitsemillasi käsin valituilla palvelimilla.
...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...
käytämme iburst
– vaihtoehtoa jokaiselle palvelimelle NTP-Poolin suositusten mukaisesti. Näin, Jos palvelin ei ole tavoitettavissa, tämä lähettää kahdeksan pakettia tavallisen yhden paketin sijaan. burst
– vaihtoehdon käyttäminen NTP-Pool-projektissa katsotaan väärinkäytöksi, koska se lähettää nämä kahdeksan pakettia jokaisena kyselyajankohtana, kun taas iburst
lähettää kahdeksan pakettia vain ensimmäisellä kerralla.
varmista seuraavaksi, että oletusasetukset eivät salli hallintakyselyjä. Jos et, palvelintasi voidaan käyttää NTP-heijastushyökkäyksissä tai se voi olla altis ntpq
ja ntpdc
– kyselyille, jotka yrittävät muuttaa palvelimen tilaa. Tarkista, että noquery
– valitsin on lisätty oletusriveille restrict
. Varmista myös, että lisäät asetukset kod
ja limited
, koska ne rajoittavat liian innokkaasti asiakkaiden kysymistä ja valvovat korkorajoituksia.
...# 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
lisätietoa muista vaihtoehdoista löytyy virallisista asiakirjoista.
NTP-daemon-Asetustiedostosi pitäisi nyt näyttää seuraavanlaiselta, joskin tiedostossasi voi olla Lisähuomautuksia, jotka voit huoletta jättää huomiotta:
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
Tallenna tiedosto ja poistu muokkaimesta.
Käynnistä nyt NTP-palvelu uudelleen ja anna aikapalvelimesi synkronoida kellonsa ylävirran palvelimiin.
- sudo systemctl restart ntpd
tarkista muutaman minuutin kuluttua aikapalvelimesi kunto ntpq
– komennolla:
- ntpq -p
tuotoksen pitäisi näyttää samanlaiselta kuin tämä:
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
etäsarake kertoo NTP-taustaprosessin käyttämien palvelimien palvelimen nimen ja refid-sarake kertoo, mitä lähdettä palvelimet käyttävät. Joten Stratum 1-palvelimille refid-kentän pitäisi näyttää GPS, PPS, ACTS tai PTB, ja Stratum 2 ja sitä korkeammat palvelimet näyttävät yläpuolisen palvelimen IP-osoitteen. St-sarake näyttää ositteen, ja viive, siirtymä ja värinä kertovat aikalähteen laadusta. Alemmat arvot ovat parempia näille kolmelle kentälle.
aikapalvelimenne pystyy nyt palvelemaan yleisöä. Voit varmistaa asian soittamalla ntpdate
toisesta isännästä:
- ntpdate -q your_server_ip
ulostulon pitäisi näyttää samanlaiselta kuin tämä ja se kertoo, että se sääti aikapalvelinta ja siirtymä:
Outputserver 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
olet nyt valmis rekisteröimään NTP-palvelimesi NTP-Pool-projektiin, jotta muut voivat käyttää sitä.
Vaihe 4-palvelimen lisääminen NTP-Pooliin
palvelimen lisääminen, jotta muut voivat käyttää sitä, käy manage.ntppool.org ja rekisteröityä tilin. Saat sähköpostin NTP Poolilta [email protected] pyydän, että vahvistat tilisi. Vahvista tilisi noudattamalla ohjeita sähköpostissa, ja kirjaudu sitten manage.ntppool.org.
kun olet kirjautunut sisään, näet yksinkertaisen käyttöliittymän palvelimien lisäämiseen:
anna palvelimen IP-osoite ja napsauta Lähetä.
seuraava ruutu pyytää sinua varmistamaan, että se tunnisti palvelimesi alueen. Jos se näyttää palvelimesi eri alueella kuin oletat, käytä kommenttikenttään kertoa heille.
jos olet tyytyväinen, vahvista merkintä klikkaamalla Kyllä, Tämä on palvelimeni, lisää se!
palvelimesi on nyt osa NTP Pool-projektia. Käy http://www.pool.ntp.org/scores/your_server_ip
katsomassa tietoja, joita NTP Poolin seurantajärjestelmä on kerännyt palvelimestasi. Se tarkistaa palvelimen muutaman kerran tunnissa ja näyttää offset tiedot, alog kanssa pisteet järjestelmän. Niin kauan kuin palvelin pitää hyvää aikaa ja on tavoitettavissa, pisteet nousevat kunnes se saavuttaa 20 pistettä. Poolissa käytetään vain palvelimia, joiden pistemäärä on yli 10.
Liitettävyysongelmien vianmääritys
jos sinulla on ongelmia saada palvelimesi synkronoitumaan, saattaa olla pakettipalomuuri käytössä pudottamalla lähtevät paketit porttiin 123
. Tutustu miten perustaa palomuuri käyttäen FirewallD CentOS 7 oppia tarkistaa tilan palomuuri.
jos NTP-Pool-projektin seuranta-asema ei yllä NTP-palvelimeesi ja palvelimen pisteet laskevat tai et voi käyttää palvelintasi jonkin muun kellon synkronoimiseen, sinulla saattaa olla pakettipalomuuri käytössä pudottaen saapuvan liikenteen porttiin 123
. Tarkista palomuurin tila.
jos olet varma, että sinulla ei ole palomuuria käytössä tai olet avannut portin 123
sekä saapuvalle että lähtevälle liikenteelle, palvelintarjoajasi tai muu kauttakulkupalveluntarjoaja saattaa pudottaa pakettisi matkan varrella. Jos sinulla ei ole tietoa ratkaista näitä ongelmia itse, se on parasta kääntyä yhteisön ja tavoittaa apua. NTP Pool Projects forum on hyvä paikka aloittaa. Voit myös liittyä postituslistalle tai lähettää emaillin NTP Pool-hankkeen operaattorille. Vain olla varma, että voit näyttää kaikki vaiheet olet jo yrittänyt ratkaista ongelman ennen pyytää apua.
johtopäätös
tässä opetusohjelmassa perustit onnistuneesti Oman aikapalvelimen ja teit siitä NTP Pool-projektin jäsenen, joka palveli aikaa yhteisölle. Pitää yhteyttä aikaa pitävään yhteisöön. liity NTP Pool Projects-foorumiin tai postituslistalle. Muista seurata palvelimen pisteet ja tehdä tarvittavat muutokset.