
Nastavljajući priču o ZeroTieru, od teorije iznesene u članku “Smart Ethernet prekidač za planetu Zemlju“, prelazim na praksu u kojoj:
- Kreirajmo i konfigurirajmo privatni mrežni kontroler
- Kreirajmo virtuelnu mrežu
- Konfigurirajmo i spojimo čvorove na njega
- Provjerimo mrežnu povezanost između njih
- Blokirajmo pristup GUI mrežnog kontrolera izvana
Setevoj kontroller
Kao što je ranije spomenuto, za kreiranje virtualnih mreža, upravljanje njima, kao i povezivanje čvorova, korisniku je potreban mrežni kontroler, grafički interfejs (GUI) za koji postoji u dva oblika:
ZeroTier GUI opcije
- Jedan od programera ZeroTier, dostupan kao javno SaaS rješenje u oblaku s četiri plana pretplate, uključujući besplatne, ali ograničene u broju upravljanih uređaja i nivou podrške
- Drugi je od nezavisnog programera, donekle pojednostavljen u funkcionalnosti, ali dostupan kao privatno rješenje otvorenog koda za korištenje lokalno ili na cloud resursima.
U svojoj praksi sam koristio i jedno i drugo i kao rezultat toga, konačno sam se odlučio na drugi. Razlog za to bila su upozorenja programera.
„Kontroleri mreže služe kao autoriteti za sertifikaciju za ZeroTier virtuelne mreže. Datoteke koje sadrže tajne ključeve kontrolera moraju se pažljivo čuvati i sigurno arhivirati. Njihov kompromis omogućava neovlaštenim napadačima da kreiraju lažne mrežne konfiguracije, a njihov gubitak dovodi do gubitka mogućnosti kontrole i upravljanja mrežom, što je efektivno čini neupotrebljivom."
I također, znakovi vaše vlastite paranoje u vezi s cyber sigurnošću :)
- Čak i ako Cheburnet dođe, još uvijek moram imati pristup svom mrežnom kontroleru;
- Samo ja treba da koristim 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 da se posebno zadržavam na tome kako implementirati mrežni kontroler i GUI za njega na fizičkim ili virtuelnim resursima na premisi. A za to postoje i 3 razloga:
- biće više pisama nego što je planirano
- već o ovome rekao na GUI programeru GitHab
- tema članka je o nečem drugom
Stoga, birajući put najmanjeg otpora, u ovoj narativu ću koristiti mrežni kontroler sa GUI-jem zasnovanim na VDS, kreirano iz šablona, ljubazno razvijen od strane mojih kolega iz ProHoster.
Početno podešavanje
Nakon stvaranja server Iz navedenog predloška, korisnik dobija pristup Web-GUI kontroleru putem preglednika pristupom adresi http:// :3443

po defaultu server već sadrži unaprijed generirani samopotpisani TLS/SSL certifikat. To mi je dovoljno, jer ne dozvoljavam vanjski pristup njemu. Za one koji žele koristiti druge vrste certifikata, postoje upute za instalaciju na GUI programeru GitHab.
Kada se korisnik prvi put prijavi Login sa zadanim imenom i lozinkom - admin и lozinka:

Predlaže promjenu zadane lozinke u prilagođenu

Ja to radim malo drugačije - ne mijenjam lozinku postojećeg korisnika, već kreiram novu - Kreirajte korisnika.
Postavio sam ime novog korisnika - Korisničko:
Postavio sam novu lozinku - Unesite novu lozinku:
Potvrđujem novu lozinku - Ponovo unesite lozinku:
Znakovi koje unosite razlikuju velika i mala slova - budite oprezni!
Potvrdni okvir za potvrdu promjene lozinke pri sljedećoj prijavi - Promijenite lozinku pri sljedećoj prijavi: Ja ne slavim.
Za potvrdu unesenih podataka pritisnite Postavite lozinku:

Zatim: ponovo se prijavljujem - Odjavite se / Login, već pod akreditivima novog korisnika:

Zatim idem na karticu korisnika - korisnici i izbrišite korisnika adminklikom na ikonu kante za smeće koja se nalazi lijevo od njegovog imena.

Ubuduće možete promijeniti lozinku korisnika klikom na njegovo ime ili na postavljenu lozinku.
Kreiranje virtuelne mreže
Da bi kreirao virtuelnu mrežu, korisnik treba da ode na karticu Dodaj mrežu. Od tačke Korisnik ovo se može uraditi preko stranice Početna — glavna stranica Web-GUI-a, koja prikazuje ZeroTier adresu ovog mrežnog kontrolera i sadrži vezu do stranice za listu mreža kreiranih preko njega.

Na stranici Dodaj mrežu korisnik dodjeljuje ime novokreiranoj mreži.

Prilikom primjene ulaznih podataka − Kreirajte mrežu korisnik se vodi na stranicu sa listom mreža, koja sadrži:
Naziv mreže — naziv mreže u obliku veze, kada kliknete na njega možete ga promijeniti
ID mreže — identifikator mreže
detalj — link na stranicu sa detaljnim mrežnim parametrima
jednostavno postavljanje — link do stranice za jednostavno postavljanje
članovi — link na stranicu za upravljanje čvorom

Za dalje podešavanje pratite link jednostavno postavljanje. Na stranici koja se otvori, korisnik određuje raspon IPv4 adresa za mrežu koja se kreira. Ovo se može uraditi automatski pritiskom na dugme Generirajte mrežnu adresu ili ručno unosom mrežne maske u odgovarajuće polje CIDR.

Prilikom potvrde uspješnog unosa podataka, morate se vratiti na stranicu sa listom mreža pomoću dugmeta Nazad. U ovom trenutku, osnovno podešavanje mreže se može smatrati završenim.
Povezivanje mrežnih čvorova
- Prvo, usluga ZeroTier One mora biti instalirana na čvoru koji korisnik želi da se poveže na mrežu.Šta je ZeroTier One?ZeroTier One — servis koji radi na laptopima, desktop računarima, serverima, virtuelnim mašinama i kontejnerima, omogućavajući veze sa virtuelnom mrežom putem virtuelnog mrežnog porta, slično VPN klijentu. Nakon što je servis instaliran i pokrenut, možete se povezati sa virtuelnim mrežama koristeći njihove 16-cifrene adrese. Svaka mreža se u sistemu pojavljuje kao virtuelni mrežni port, koji se ponaša baš kao i običan Ethernet port.
Linkovi za distribucije, kao i instalacijske komande, mogu se pronaći na stranici proizvođačaInstaliranim servisom možete upravljati putem terminala komandne linije (CLI) s administratorskim/root pravima. Windows/MacOS također koristi grafički interfejs. Android/iOS samo putem GUI-ja. - Provjera uspješnosti instalacije servisa:CLI:
zerotier-cli statusRezultat:
200 info ebf416fac1 1.4.6 ONLINE
GUI:Sama činjenica da je aplikacija pokrenuta i prisustvo u njoj linije sa Node ID-om sa adresom čvora.
- Povezivanje čvora na mrežu:CLI:
zerotier-cli join <Network ID>Rezultat:
200 join OKGUI:
Windows: desnim klikom na ikonu ZeroTier One u sistemskoj paleti i odabirom stavke - Pridružite se mreži.

macOS: Pokrenite aplikaciju ZeroTier One u meniju trake, ako već nije pokrenut. Kliknite na ikonu ⏁ i odaberite Pridružite se mreži.Android/iOS: + (znak plus) u aplikaciji

U polje koje se pojavi unesite mrežni kontroler naveden u GUI ID mrežei pritisnite Pridruži se/Dodaj mrežu. - Dodjeljivanje IP adrese hostu
Sada se vraćamo na mrežni kontroler i na stranici sa listom mreža slijedite link članovi. Ako vidite sliku sličnu ovoj na ekranu, to znači da je vaš mrežni kontroler primio zahtjev da potvrdi vezu s mrežom od povezanog čvora.
Na ovoj stranici ostavljamo sve kako je za sada i slijedite link IP dodjela idite na stranicu za dodjelu IP adrese čvoru:
Nakon dodjeljivanja adrese, kliknite na dugme natrag vratite se na stranicu liste povezanih čvorova i postavite naziv - Ime člana i označite potvrdni okvir za autorizaciju čvora na mreži - Ovlašćeno. Inače, ovo polje za potvrdu je vrlo zgodna stvar za isključivanje/povezivanje sa host mreže u budućnosti.
Sačuvajte promene pomoću dugmeta osvježiti. - Provjera statusa veze čvora s mrežom:
Da biste provjerili status veze na samom čvoru, pokrenite:
CLI:zerotier-cli listnetworksRezultat:
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 bi trebao biti OK
Da biste povezali preostale čvorove, ponovite operacije 1-5 za svaki od njih.
Provjera mrežne povezanosti čvorova
Ovo radim pokretanjem komande ping na uređaju spojenom na mrežu kojom trenutno upravljam.

Na snimku ekrana Web-GUI kontrolera možete vidjeti tri čvora povezana na mrežu:
- ZTNCUI - 10.10.10.1 — moj mrežni kontroler sa grafičkim korisničkim interfejsom — VDS u jednom od DC-ova ProHosterNema potrebe da ga dodajem na mrežu za normalan rad, ali sam to uradio jer želim da blokiram eksterni pristup web interfejsu. Više o tome kasnije.
- MyComp - 10.10.10.2 - moj radni računar je fizički računar
- Backup - 10.10.10.3 — VDS u drugom DC.
Stoga sa svog radnog računara provjeravam dostupnost drugih čvorova naredbama:
ping 10.10.10.1Pinging 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
Statistika pinga za 10.10.10.1:
Paketi: Poslano = 4, Primljeno = 4, Izgubljeno = 0 (0% gubitka),
Približna povratna vremena u milisekundama:
Minimum = 2ms, Maksimum = 14ms, Prosjek = 6ms
ping 10.10.10.3Pinging 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
Statistika pinga za 10.10.10.3:
Paketi: Poslano = 4, Primljeno = 4, Izgubljeno = 0 (0% gubitka),
Približna povratna vremena u milisekundama:
Minimum = 4ms, Maksimum = 15ms, Prosjek = 7ms
Korisnik ima pravo da koristi i druge alate za provjeru dostupnosti čvorova na mreži, kako ugrađene u OS, tako i NMAP, Advanced IP Scanner, itd.
Skrivamo pristup GUI mrežnog kontrolera izvana.
Generalno, mogu smanjiti vjerovatnoću neovlaštenog pristupa VDS-u na kojem se nalazi moj mrežni kontroler koristeći zaštitni zid (firewall) u svom ličnom računu. ProHosterOva tema je prikladnija za zaseban članak. Stoga ću vam ovdje pokazati kako osigurati da je pristup grafičkom korisničkom sučelju kontrolera ograničen na mrežu koju sam kreirao u ovom članku.
Da biste to učinili, morate se povezati preko SSH-a na VDS na kojem se nalazi kontroler i otvoriti konfiguracijsku datoteku pomoću naredbe:
nano /opt/key-networks/ztncui/.envU otvorenoj datoteci, nakon reda “HTTPS_PORT=3443” koji sadrži adresu porta na kojem se otvara GUI, potrebno je dodati dodatni red sa adresom na kojoj će se GUI otvoriti - u mom slučaju to je HTTPS_HOST=10.10.10.1 .XNUMX.
Zatim ću sačuvati fajl
Сtrl+C
Y
Enter
i pokrenite naredbu:
systemctl restart ztncuiI 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 kreiranje virtuelnih mreža zasnovanih na ZeroTier-u. Radujem se vašim komentarima.
U međuvremenu, da prođemo vrijeme do objavljivanja sljedećeg dijela, u kojem ću vam reći kako spojiti virtuelnu mrežu sa fizičkom, kako organizirati način rada “road warrior” i još nešto, predlažem da probate organiziranje vlastite virtuelne mreže koristeći privatni mrežni kontroler sa GUI baziranim na VDS-u od tržišta nadalje site ProHosterŠtaviše, svi novi klijenti dobijaju besplatni probni period od 3 dana!
PS Da! Skoro sam zaboravio! Možete ukloniti čvor iz mreže koristeći naredbu u CLI-u ovog čvora.
zerotier-cli leave <Network ID>200 leave OK
ili naredbu Delete u GUI klijentu na čvoru.
-> Uvod. Teorijski dio. Smart Ethernet prekidač za planetu Zemlju
-> Praktični vodič za izgradnju virtuelnih mreža. Dio 1
-> Praktični vodič za izgradnju virtuelnih mreža. Dio 2
izvor: www.habr.com





