Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
Trochgean mei it ZeroTier-ferhaal, fan 'e teory beskreaun yn it artikel "Smart Ethernet Switch foar Planet Earth", gean ik oer nei de praktyk wêryn:

  • Meitsje en konfigurearje in privee netwurk controller
  • Litte wy in firtuele netwurk meitsje
  • Ynstelle en ferbine knooppunten oan it
  • Litte wy de netwurkferbining tusken har kontrolearje
  • Litte wy tagong ta de GUI fan 'e netwurkkontrôler fan bûten ôf slute

Netwurk Controller

Lykas earder neamd, om firtuele netwurken te meitsjen, se te behearjen en knooppunten te ferbinen, hat de brûker in netwurkkontrôler nedich, in grafyske ynterface (GUI) wêrfoar yn twa foarmen bestiet:

ZeroTier GUI-opsjes

  • Ien fan ûntwikkelder ZeroTier, beskikber as in SaaS iepenbiere wolk-oplossing mei fjouwer abonnemintsplannen, ynklusyf fergees, mar beheind yn behearde apparaten en stipenivo
  • De twadde is fan in ûnôfhinklike ûntwikkelder, wat ferienfâldige yn termen fan funksjonaliteit, mar beskikber as in privee iepen boarne-oplossing, foar gebrûk op 'e grûn as op wolkboarnen.

Yn myn praktyk brûkte ik beide en as gefolch haw ik my fêstige op de twadde. De reden dêrfoar wie de warskôgings fan de ûntwikkelder.

"Netwurkcontrollers tsjinje as CA's foar ZeroTier firtuele netwurken. Bestannen dy't de geheime kaaien fan 'e controller befetsje moatte soarchfâldich bewekke en feilich argivearre wurde. Har kompromis lit unautorisearre oanfallers frauduleuze netwurkkonfiguraasjes meitsje, en har ferlies liedt ta it ferlies fan 'e mooglikheid om it netwurk te kontrolearjen en te behearjen, wêrtroch it effektyf ûnbrûkber is.

Link nei dokumintaasje

En ek, tekens fan harren eigen IS-paranoia 🙂 

  • Ek as Cheburnet komt, Ik moat noch ha tagong ta myn netwurk controller;
  • Allinich moat ik de netwurkkontrôler brûke. As it nedich is, tagong jaan oan har autorisearre persoanen;
  • It moat mooglik wêze om tagong ta de netwurkkontrôler fan bûten te beheinen.

Ik sjoch net folle punt yn wenjen apart op hoe te ynsette in netwurk controller en in GUI foar it op on-premise fysike of firtuele boarnen. Ik sjoch net folle punt yn dit artikel. En d'r binne 3 redenen foar dit: 

  • der komme mear brieven as pland
  • der al oer ferteld op GitHab GUI Developer
  • ûnderwerp fan in artikel oer in oar

Dêrom, it paad fan minder ferset te kiezen, sil ik yn dit ferhaal in netwurkkontrôler brûke mei in GUI basearre op VDS makke troch út sjabloan, freonlik ûntwikkele troch myn kollega's by RuVDS.

Inisjele opset

Nei it oanmeitsjen fan in tsjinner fan it opjûne sjabloan, krijt de brûker tagong ta de Web-GUI fan 'e controller fia de browser troch tagong te krijen ta https:// :3443

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
Standert befettet de tsjinner al in foarôf oanmakke sels-ûndertekene TLS/SSL-sertifikaat. Foar my is dit genôch, om't ik de tagong ta it fan bûten ôf slute. Foar dyjingen dy't oare soarten sertifikaten wolle brûke, is d'r ynstallaasje ynstruksjes op GitHab fan 'e GUI-ûntwikkelder.

De earste kear dat in brûker oanmelde login mei standert brûkersnamme en wachtwurd admin и wachtwurd:

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
It suggerearret it feroarjen fan it standert wachtwurd yn in oanpast.

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
Ik hannelje in bytsje oars - ik feroarje it wachtwurd net foar in besteande brûker, mar meitsje in nij - Meidogger meitsje.

Stel de namme fan de nije brûker yn - brûkersnamme:
Ik set in nij wachtwurd yn - Fier nij wachtwurd yn
Befêstigje nij wachtwurd - Wachtwurd opnij ynfiere:

Ynfierde karakters binne haadlettergefoel - wês foarsichtich!

Checkbox om wachtwurdwiziging te befêstigjen by folgjende oanmelding - Wachtwurd feroarje by folgjende oanmelding: Ik merk net. 

Om de ynfierde gegevens te befêstigjen, druk op Set wachtwurd:

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
Dan: ik log yn - Útlogge / login, al ûnder de bewiisbrieven fan de nije brûker:

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
Gean dan nei it tabblêd brûkers - brûkers en wiskje de brûker admintroch te klikken op it jiskefet ikoan links fan syn namme.

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
Yn 'e takomst kinne jo it wachtwurd fan de brûker feroarje troch te klikken op syn namme of op ynsteld wachtwurd.

Meitsje in firtuele netwurk

Om in firtuele netwurk te meitsjen, moat de brûker nei it ljepblêd gean Foegje netwurk ta. Ut paragraaf Brûker dit kin fia de side Home - de haadside fan 'e Web-GUI, dy't it ZeroTier-adres fan' e opjûne netwurkkontrôler toant en in keppeling befettet nei de side fan 'e list mei netwurken dy't dêrtroch makke binne.

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
Op pagina Foegje netwurk ta de brûker jout de namme fan it nij oanmakke netwurk.

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
By it tapassen fan ynfiergegevens - Netwurk oanmeitsje de brûker wurdt nommen nei in side mei in list fan netwurken, dy't toant: 

Netwurk namme - de namme fan it netwurk yn 'e foarm fan in keppeling, as jo klikke wêrop jo it kinne feroarje 
Netwurk ID - netwurk ID
detail - keppeling nei de side mei detaillearre netwurkparameters
maklike opset - keppeling nei de side foar maklike opset
leden - keppeling nei de knooppuntbehearside

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
Foar fierdere ynstellings folgje de keppeling maklike opset. Op 'e side dy't iepenet, stelt de brûker it berik fan IPv4-adressen yn foar it oanmakke netwurk. Dit kin automatysk dien wurde troch op de knop te drukken Generearje netwurkadres of mei de hân troch it netmasker fan it netwurk yn it passende fjild yn te fieren CIDR.

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
Nei befêstiging fan suksesfolle gegevensynfier, moatte jo weromgean nei de side mei de list mei netwurken mei de knop Werom. Dit foltôget de basis netwurk opset.

Ferbine hosts

  1. Om te begjinnen, op it knooppunt dat de brûker wol ferbine mei it netwurk, moatte jo de tsjinst ZeroTier One ynstallearje.

    Wat is Zero Tier One?Zero Tier One is in tsjinst dy't rint op laptops, buroblêden, servers, firtuele masines en konteners dy't ferbiningen leveret mei in firtuele netwurk fia in firtuele netwurkpoarte, fergelykber mei in VPN-kliïnt. 

    Sadree't de tsjinst is ynstallearre en rint, kinne jo ferbine mei firtuele netwurken mei help fan harren 16-karakter adressen. Elts netwurk ferskynt as in firtuele netwurk haven op it systeem dat gedraacht krekt as in normale Ethernet haven.
    Keppelings nei distribúsjes, lykas ynstallaasjekommando's kinne fûn wurde op de fabrikant syn side.

    Jo kinne de ynstalleare tsjinst beheare fia it kommandorigelterminal (CLI) mei admin / root-rjochten. Op Windows/MacOS brûke noch de grafyske ynterface. Op Android / iOS allinich fia GUI.

  2. Kontrolearje as de tsjinstynstallaasje suksesfol wie:

    CLI:

    zerotier-cli status

    Resultaat: 

    200 info ebf416fac1 1.4.6 ONLINE
    GUI:

    It feit fan har wurking fan 'e applikaasje en de oanwêzigens dêryn fan in line mei Node ID mei it adres fan' e node.

  3. It knooppunt ferbine mei it netwurk:

    CLI:

    zerotier-cli join <Network ID>

    Resultaat: 

    200 join OK

    GUI:

    Windows: rjochts klik op it ikoan Zero Tier One yn it systeemfak en selektearje it item - Join Network.

    Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
    macOS: Starte de applikaasje Zero Tier One yn de bar menu, as net al rint. Klikje op it ikoan ⏁ en selektearje Join Network.

    Android/iOS: + (plus ôfbylding) yn app

    Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
    Fier yn it fjild dat ferskynt de netwurkkontrôler yn opjûn yn 'e GUI Netwurk ID, en druk op Join / Add Network.

  4. It tawizen fan in IP-adres oan in host
    No geane wy ​​werom nei de netwurkkontrôler en op 'e side mei de list fan netwurken folgje de keppeling leden. As jo ​​​​in ôfbylding hawwe sjoen lykas dizze op it skerm, betsjut dit dat jo netwurkkontrôler in fersyk krige om de ferbining mei it netwurk te befêstigjen fan 'e ferbûne knooppunt.

    Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
    Op dizze side litte wy alles sa't it is foar no en folgje de keppeling IP opdracht gean nei de side foar it tawizen fan in IP-adres oan in knooppunt:

    Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
    Nei it tawizen fan it adres, troch te klikken op de knop Efter wy geane werom nei de side fan 'e list mei ferbûne knooppunten en set de namme yn - lid Namme en markearje it karfakje foar it autorisearjen fan de knooppunt yn it netwurk - Autorisearre. Trouwens, dit karfakje is in heul handich ding foar it losmeitsjen / ferbinen fan it netwurk fan 'e knooppunt yn' e takomst.

    Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
    Bewarje wizigingen mei in knop refresh.

  5. Kontrolearje de netwurkferbiningstatus fan in knooppunt:
    Om de ferbiningstatus op it knooppunt sels te kontrolearjen, útfiere:
    CLI:

    zerotier-cli listnetworks

    Resultaat:

    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:

    Netwurkstatus moat OK wêze

    Om de oerbleaune knopen te ferbinen, werhelje operaasjes 1-5 foar elk fan harren.

Kontrolearje netwurkferbining fan knopen

Ik doch it mei it kommando ping op it netwurkapparaat dat ik op it stuit behear.

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
Yn it skermôfbylding fan 'e Web-GUI-controller kinne jo trije knopen sjen dy't ferbûn binne mei it netwurk:

  1. ZTNCUI-10.10.10.1 - myn netwurk controller mei in GUI - VDS yn ien fan de RuVDS DCs. Foar normaal wurk is it net nedich om it oan it netwurk ta te foegjen, mar ik die dit om't ik tagong ta de webynterface fan bûten blokkearje wol. Mear hjiroer letter. 
  2. MyComp-10.10.10.2 - myn wurkkompjûter is in fysike PC
  3. Reservekopy - 10.10.10.3 - VDS yn in oare DC.

Dêrom kontrolearje ik fan myn wurkkomputer de beskikberens fan oare knopen mei de kommando's:

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

De brûker hat it rjocht om oare ark te brûken foar it kontrolearjen fan de beskikberens fan knopen yn it netwurk, sawol ynboud yn it OS, lykas NMAP, Advanced IP Scanner, ensfh.

Wy ferbergje tagong ta de GUI fan 'e netwurkkontrôler fan bûten.

Yn 't algemien kin ik de kâns ferminderje fan unautorisearre tagong ta de VDS wêrop myn netwurkkontrôler leit mei de firewall yn myn RuVDS-akkount. Dit ûnderwerp is mear foar in apart artikel. Dêrom sil ik hjir sjen litte hoe't jo tagong krije ta de controller GUI allinich fan it netwurk dat ik yn dit artikel haw makke.

Om dit te dwaan, ferbine fia SSH mei de VDS wêrop de controller leit, iepenje it konfiguraasjetriem mei it kommando:

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

Yn it bestân dat iepenet, nei de rigel "HTTPS_PORT=3443" mei it poarteadres wêrop de GUI is iepene, moatte jo in ekstra rigel tafoegje mei it adres wêrop de GUI sil iepenje - yn myn gefal is it HTTPS_HOST=10.10.10.1 .XNUMX. 

Folgjende, bewarje de triem

Сtrl+C
Y
Enter 

en fier it kommando út:

systemctl restart ztncui

En dat is it, no is de GUI fan myn netwurkkontrôler allinich beskikber foar netwurkknooppunten 10.10.10.0.24.

Yn stee fan in konklúzje 

Hjiroer wol ik it earste diel ôfmeitsje fan in praktyske hantlieding foar it meitsjen fan firtuele netwurken basearre op ZeroTier. Ik sjoch út nei jo opmerkings. 

Yn 'e tuskentiid, om de tiid troch te jaan oant de publikaasje fan it folgjende diel, wêryn ik jo sil fertelle hoe't jo in firtuele netwurk kombinearje mei in fysike, hoe't jo in "road warrior" modus organisearje en wat oars, stel ik foar dat jo besykje organisearje jo eigen firtuele netwurk mei help fan in privee netwurk controller mei GUI basearre op VDS út 'e merk op side RUVDS. Boppedat is d'r foar alle nije klanten in fergese proefperioade - 3 dagen!

PS Ja! Ik hast fergetten! Jo kinne in knooppunt fan it netwurk fuortsmite mei in kommando yn 'e CLI fan dit knooppunt.

zerotier-cli leave <Network ID>

200 leave OK

of it kommando wiskje yn 'e client GUI op it knooppunt.

-> Ynlieding. Teoretysk diel. Smart Ethernet Switch foar Planet Earth
-> In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1
-> In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 2

Oandreaun troch ZeroTier. In praktyske hantlieding foar it bouwen fan firtuele netwurken. Diel 1

Boarne: www.habr.com

Add a comment