Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Nastavak priče o ZeroTieru, od teorije iznesene u članku “Pametni Ethernet prekidač za planet Zemlju", prelazim na praksu u kojoj:

  • Kreirajmo i konfigurirajmo kontroler privatne mreže
  • Kreirajmo virtualnu mrežu
  • Konfigurirajmo i spojimo čvorove na njega
  • Provjerimo mrežnu povezanost između njih
  • Blokirajmo pristup GUI mrežnog kontrolera izvana

Mrežni kontroler

Kao što je ranije spomenuto, za stvaranje virtualnih mreža, upravljanje njima, kao i povezivanje čvorova, korisnik treba mrežni kontroler, grafičko sučelje (GUI) za koje postoji u dva oblika:

ZeroTier GUI opcije

  • Jedan od programera ZeroTier, dostupan kao javno oblak SaaS rješenje s četiri plana pretplate, uključujući besplatne, ali ograničen u broju upravljanih uređaja i razini podrške
  • Drugi je od neovisnog razvojnog programera, donekle pojednostavljen u funkcionalnosti, ali dostupan kao privatno rješenje otvorenog koda za korištenje na lokalu ili u resursima u oblaku.

U svojoj praksi koristio sam oba i kao rezultat toga konačno sam se odlučio za drugi. Razlog tome bila su upozorenja programera.

„Mrežni kontroleri služe kao certifikacijska tijela za ZeroTier virtualne mreže. Datoteke koje sadrže tajne ključeve kontrolera moraju se pažljivo čuvati i sigurno arhivirati. Njihova kompromitacija omogućuje neovlaštenim napadačima stvaranje lažnih mrežnih konfiguracija, a njihov gubitak dovodi do gubitka mogućnosti kontrole i upravljanja mrežom, što je zapravo čini neupotrebljivom."

Link na dokumentaciju

I također, znakovi vaše vlastite kibersigurnosne paranoje :) 

  • Čak i ako Cheburnet dođe, i dalje moram imati pristup svom mrežnom kontroleru;
  • Samo bih ja trebao koristiti mrežni kontroler. Ako je potrebno, omogućavanje pristupa vašim ovlaštenim predstavnicima;
  • Trebalo bi biti moguće ograničiti pristup mrežnom kontroleru izvana.

U ovom članku ne vidim puno smisla posebno razmišljati o tome kako implementirati mrežni kontroler i GUI za njega na lokalnim fizičkim ili virtualnim resursima. I za to postoje 3 razloga: 

  • bit će više slova nego što je planirano
  • o ovome već ispričao na GUI razvijaču GitHabu
  • tema članka je o nečem drugom

Stoga ću, birajući put manjeg otpora, u ovoj priči koristiti mrežni kontroler s GUI-jem temeljenim na VDS-u, kreiran od iz predloška, koji su ljubazno razvili moji kolege iz RuVDS-a.

Početno postavljanje

Nakon kreiranja poslužitelja iz navedenog predloška, ​​korisnik dobiva pristup Web-GUI kontroleru putem preglednika pristupom https:// :3443

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Prema zadanim postavkama poslužitelj već sadrži unaprijed generirani samopotpisani TLS/SSL certifikat. Ovo mi je dovoljno, jer blokiram pristup izvana. Za one koji žele koristiti druge vrste certifikata, postoji upute za instalaciju na GUI razvijaču GitHabu.

Kada se korisnik prvi put prijavi Prijava sa zadanom prijavom i lozinkom - admin и lozinka:

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Predlaže promjenu zadane lozinke u prilagođenu

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Ja to radim malo drugačije - ne mijenjam lozinku postojećeg korisnika, već kreiram novu - Izrada korisnika.

Postavio sam ime novog korisnika - Korisničko ime:
Postavio sam novu lozinku - Unesite novu lozinku
Potvrđujem novu lozinku - Ponovno unesite zaporku:

Znakovi koje unosite razlikuju velika i mala slova - budite oprezni!

Potvrdni okvir za potvrdu promjene lozinke pri sljedećoj prijavi - Promjena lozinke pri sljedećoj prijavi: ne slavim. 

Za potvrdu unesenih podataka pritisnite Postavi lozinku:

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Zatim: ponovno se prijavljujem - Odjava / Prijava, već pod vjerodajnicama novog korisnika:

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Zatim idem na karticu korisnika - korisnici i izbrisati korisnika adminklikom na ikonu kante za smeće koja se nalazi lijevo od njegovog imena.

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Ubuduće možete promijeniti lozinku korisnika klikom na njegovo ime ili na postavljenu lozinku.

Stvaranje virtualne mreže

Za stvaranje virtualne mreže korisnik treba otići na karticu Dodajte mrežu. Od točke korisnik to se može učiniti putem stranice Naslovna — glavna stranica web-GUI-a, koja prikazuje ZeroTier adresu ovog mrežnog kontrolera i sadrži poveznicu na stranicu za popis mreža kreiranih kroz njega.

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Na stranici Dodajte mrežu korisnik novostvorenoj mreži dodjeljuje naziv.

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Prilikom primjene ulaznih podataka − Stvorite mrežu korisnik je odveden na stranicu s popisom mreža, koji sadrži: 

Naziv mreže — naziv mreže u obliku poveznice, kada kliknete na njega možete ga promijeniti 
ID mreže — identifikator mreže
detalj — poveznica na stranicu s detaljnim mrežnim parametrima
jednostavno postavljanje — poveznica na stranicu za jednostavno postavljanje
Članovi — poveznica na stranicu za upravljanje čvorom

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Za daljnje postavljanje slijedite poveznicu jednostavno postavljanje. Na stranici koja se otvori, korisnik navodi raspon IPv4 adresa za mrežu koja se stvara. To se može učiniti automatski pritiskom na gumb Generiraj mrežnu adresu ili ručno unosom mrežne mrežne maske u odgovarajuće polje Cidr.

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Prilikom potvrde uspješnog unosa podataka morate se tipkom Natrag vratiti na stranicu s popisom mreža. U ovom trenutku, osnovno postavljanje mreže može se smatrati završenim.

Povezivanje mrežnih čvorova

  1. Prvo, usluga ZeroTier One mora biti instalirana na čvoru koji korisnik želi spojiti na mrežu.

    Što je ZeroTier One?ZeroTier One je usluga koja radi na prijenosnim računalima, stolnim računalima, poslužiteljima, virtualnim strojevima i spremnicima koja omogućuje povezivanje s virtualnom mrežom putem virtualnog mrežnog priključka, slično VPN klijentu. 

    Nakon što je usluga instalirana i pokrenuta, možete se spojiti na virtualne mreže pomoću njihovih 16-znamenkastih adresa. Svaka se mreža pojavljuje kao virtualni mrežni priključak na sustavu, koji se ponaša kao obični Ethernet priključak.
    Mogu se pronaći poveznice na distribucije, kao i naredbe za instalaciju na stranici proizvođača.

    Instaliranom uslugom možete upravljati putem terminala naredbenog retka (CLI) s administratorskim/root pravima. Na Windows/MacOS također korištenjem grafičkog sučelja. U Androidu/iOS-u samo pomoću GUI-ja.

  2. Provjera uspješnosti instalacije usluge:

    CLI:

    zerotier-cli status

    Rezultat: 

    200 info ebf416fac1 1.4.6 ONLINE
    GUI:

    Sama činjenica da je aplikacija pokrenuta i prisutnost u njoj retka s ID-om čvora s adresom čvora.

  3. Spajanje čvora na mrežu:

    CLI:

    zerotier-cli join <Network ID>

    Rezultat: 

    200 join OK

    GUI:

    Windows: desnom tipkom miša kliknite na ikonu ZeroTier One u traci sustava i odabirom stavke - Pridružite se mreži.

    Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
    macOS: Pokrenite aplikaciju ZeroTier One u tračnom izborniku, ako već nije pokrenut. Kliknite na ikonu ⏁ i odaberite Pridružite se mreži.

    Android/iOS: + (plus slika) u aplikaciji

    Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
    U polje koje se pojavi unesite mrežni kontroler naveden u GUI-u ID mreže, i pritisnite Pridružite se/dodajte mrežu.

  4. Dodjeljivanje IP adrese hostu
    Sada se vraćamo na mrežni kontroler i na stranici s popisom mreža slijedimo vezu Članovi. Ako na zaslonu vidite sliku sličnu ovoj, to znači da je vaš mrežni kontroler primio zahtjev za potvrdu veze s mrežom od povezanog čvora.

    Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
    Na ovoj stranici za sada ostavljamo sve kako jest i slijedimo poveznicu IP dodjela idite na stranicu za dodjelu IP adrese čvoru:

    Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
    Nakon dodjele adrese kliknite gumb Nazad vratite se na stranicu popisa povezanih čvorova i postavite naziv - Ime člana i potvrdite okvir za autorizaciju čvora na mreži - odobren. Usput, ovaj potvrdni okvir je vrlo zgodna stvar za odspajanje/povezivanje s host mreže u budućnosti.

    Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
    Spremite promjene pomoću gumba Osvježiti.

  5. Provjera statusa veze čvora s mrežom:
    Da provjerite status veze na samom čvoru, pokrenite:
    CLI:

    zerotier-cli listnetworks

    Rezultat:

    200 listnetworks <nwid> <name> <mac> <status> <type> <dev> <ZT assigned ips>
    200 listnetworks 2da06088d9f863be My_1st_VLAN be:88:0c:cf:72:a1 OK PRIVATE ethernet_32774 10.10.10.2/24

    GUI:

    Status mreže trebao bi biti u redu

    Za spajanje preostalih čvorova ponovite operacije 1-5 za svaki od njih.

Provjera mrežne povezanosti čvorova

To činim pokretanjem naredbe ping na uređaju spojenom na mrežu kojom trenutno upravljam.

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio
Na snimci zaslona Web-GUI kontrolera možete vidjeti tri čvora povezana s mrežom:

  1. ZTNCUI - 10.10.10.1 - moj mrežni kontroler s GUI - VDS u jednom od RuVDS DC-ova. Za normalan rad nema potrebe dodavati ga na mrežu, ali ja sam to učinio jer želim blokirati pristup web sučelju izvana. Više o ovome kasnije. 
  2. MyComp - 10.10.10.2 - moje radno računalo je fizičko računalo
  3. Sigurnosna kopija - 10.10.10.3 — VDS u drugom DC-u.

Stoga sa svog radnog računala provjeravam dostupnost drugih čvorova naredbama:

ping 10.10.10.1

Pinging 10.10.10.1 with 32 bytes of data:
Reply from 10.10.10.1: bytes=32 time=14ms TTL=64
Reply from 10.10.10.1: bytes=32 time=4ms TTL=64
Reply from 10.10.10.1: bytes=32 time=7ms TTL=64
Reply from 10.10.10.1: bytes=32 time=2ms TTL=64

Ping statistics for 10.10.10.1:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 2ms, Maximum = 14ms, Average = 6ms

ping 10.10.10.3

Pinging 10.10.10.3 with 32 bytes of data:
Reply from 10.10.10.3: bytes=32 time=15ms TTL=64
Reply from 10.10.10.3: bytes=32 time=4ms TTL=64
Reply from 10.10.10.3: bytes=32 time=8ms TTL=64
Reply from 10.10.10.3: bytes=32 time=4ms TTL=64

Ping statistics for 10.10.10.3:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 4ms, Maximum = 15ms, Average = 7ms

Korisnik ima pravo koristiti i druge alate za provjeru dostupnosti čvorova na mreži, kako ugrađene u OS, tako i NMAP, Advanced IP Scanner itd.

Sakrivamo pristup GUI mrežnog kontrolera izvana.

Općenito, mogu smanjiti vjerojatnost neovlaštenog pristupa VDS-u na kojem se nalazi moj mrežni kontroler korištenjem vatrozida u mom RuVDS osobnom računu. Ova je tema vjerojatnije za poseban članak. Stoga ću ovdje pokazati kako omogućiti pristup GUI kontroleru samo s mreže koju sam stvorio u ovom članku.

Da biste to učinili, morate se preko SSH spojiti na VDS na kojem se nalazi kontroler i otvoriti konfiguracijsku datoteku pomoću naredbe:

nano /opt/key-networks/ztncui/.env

U otvorenoj datoteci nakon retka “HTTPS_PORT=3443” koji sadrži adresu porta na kojem se otvara GUI potrebno je dodati dodatni red s adresom na kojoj će se GUI otvarati - u mom slučaju to je HTTPS_HOST=10.10.10.1 .XNUMX. 

Zatim ću spremiti datoteku

Сtrl+C
Y
Enter 

i pokrenite naredbu:

systemctl restart ztncui

I to je to, sada je GUI mog mrežnog kontrolera dostupan samo za mrežne čvorove 10.10.10.0.24.

Umjesto zaključka 

Ovdje želim završiti prvi dio praktičnog vodiča za stvaranje virtualnih mreža temeljenih na ZeroTieru. Veselim se vašim komentarima. 

U međuvremenu, da prođe vrijeme do objave sljedećeg dijela, u kojem ću vam reći kako spojiti virtualnu mrežu s fizičkom, kako organizirati način rada “cestovnog ratnika” i još nešto, predlažem da pokušate organiziranje vlastite virtualne mreže korištenjem privatnog mrežnog kontrolera s GUI-jem temeljenim na VDS-u s tržišta Online RUVDS. Štoviše, svi novi klijenti imaju besplatno probno razdoblje od 3 dana!

PS Da! Skoro sam zaboravio! Možete ukloniti čvor iz mreže pomoću naredbe u CLI-u ovog čvora.

zerotier-cli leave <Network ID>

200 leave OK

ili naredba Delete u GUI klijenta na čvoru.

-> Uvod. Teorijski dio. Pametni Ethernet prekidač za planet Zemlju
-> Praktičan vodič za izgradnju virtualnih mreža. 1. dio
-> Praktičan vodič za izgradnju virtualnih mreža. 2. dio

Pokreće ZeroTier. Praktičan vodič za izgradnju virtualnih mreža. 1. dio

Izvor: www.habr.com

Dodajte komentar