Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
Daŭrigante la rakonton pri ZeroTier, el la teorio skizita en la artikolo "Smart Ethernet Switch por Planedo Tero", mi pluiras al ekzercado en kiu:

  • Ni kreu kaj agordu privatan retan regilon
  • Ni kreu virtualan reton
  • Ni agordu kaj konektu nodojn al ĝi
  • Ni kontrolu la retan konekteblecon inter ili
  • Ni bloku aliron al la GUI de la retregilo de ekstere

Reto-Regilo

Kiel menciite antaŭe, por krei virtualajn retojn, administri ilin kaj konekti nodojn, la uzanto bezonas retan regilon, grafika interfaco (GUI) por kiu ekzistas en du formoj:

ZeroTier GUI-Ebloj

  • Unu de la programisto ZeroTier, havebla kiel publika nuba SaaS-solvo kun kvar abonplanoj, inkluzive de senpagaj, sed limigitaj en la nombro da administritaj aparatoj kaj nivelo de subteno.
  • La dua estas de sendependa programisto, iom simpligita en funkcieco, sed havebla kiel privata malfermfonta solvo por uzo surloke aŭ sur nubaj rimedoj.

En mia praktiko, mi uzis ambaŭ kaj kiel rezulto, mi finfine decidiĝis pri la dua. La kialo de ĉi tio estis la avertoj de la programisto.

"Retaj regiloj funkcias kiel atestadaŭtoritatoj por ZeroTier virtualaj retoj. Dosieroj enhavantaj kontrolajn sekretajn ŝlosilojn devas esti zorge garditaj kaj sekure arkivitaj. Ilia kompromiso permesas al neaŭtorizitaj atakantoj krei fraŭdajn retajn agordojn, kaj ilia perdo kondukas al la perdo de la kapablo kontroli kaj administri la reton, efike igante ĝin neuzebla."

Ligo al dokumentaro

Kaj ankaŭ, signoj de via propra cibersekureca paranojo :) 

  • Eĉ se Cheburnet venos, mi ankoraŭ devas havi aliron al mia retregilo;
  • Nur mi uzu la retan regilon. Se necese, provizante aliron al viaj rajtigitaj reprezentantoj;
  • Devus ebli limigi aliron al la retregilo de ekstere.

En ĉi tiu artikolo, mi ne vidas multan signifon loĝi aparte pri kiel disfaldi retan regilon kaj la GUI por ĝi sur surlokaj fizikaj aŭ virtualaj rimedoj. Kaj estas ankaŭ 3 kialoj por ĉi tio: 

  • estos pli da leteroj ol planite
  • pri tio jam rakontis sur GUI-programisto GitHab
  • la temo de la artikolo temas pri io alia

Sekve, elektante la vojon de malplej rezisto, mi uzos en ĉi tiu rakonto regilon kun GUI bazita sur VDS, kreita de el ŝablono, afable disvolvita de miaj kolegoj de RuVDS.

Komenca aranĝo

Post kreado de servilo de la specifita ŝablono, la uzanto akiras aliron al la Ret-GUI-regilo per retumilo alirante https:// : 3443

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
Defaŭlte, la servilo jam enhavas antaŭgeneritan memsubskribitan TLS/SSL-atestilon. Ĉi tio sufiĉas por mi, ĉar mi blokas aliron al ĝi de ekstere. Por tiuj, kiuj deziras uzi aliajn specojn de atestiloj, ekzistas instrukciojn pri instalado sur GUI-programisto GitHab.

Kiam la uzanto ensalutas unuafoje Ensaluti kun defaŭlta ensaluto kaj pasvorto - administristo и pasvorto:

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
Ĝi sugestas ŝanĝi la defaŭltan pasvorton al kutima

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
Mi faras tion iom alimaniere - mi ne ŝanĝas la pasvorton de ekzistanta uzanto, sed kreas novan - Kreu Uzanton.

Mi fiksis la nomon de la nova uzanto - uzantonomo:
Mi starigis novan pasvorton - Enigu novan pasvorton
Mi konfirmas la novan pasvorton - Retajpu pasvorton:

La signoj, kiujn vi enigas, distingas minusklecojn - atentu!

Markobutono por konfirmi pasvortŝanĝon ĉe sekva ensaluto - Ŝanĝu pasvorton ĉe sekva ensaluto: Mi ne festas. 

Por konfirmi la enmetitajn datumojn, premu Agordi pasvorton:

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
Tiam: Mi denove ensalutas - Elsaluti / Ensaluti, jam sub la akreditaĵoj de la nova uzanto:

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
Poste mi iras al la langeto de uzantoj - uzantoj kaj forigu la uzanton administristoalklakante la rubujon ikono lokita maldekstre de lia nomo.

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
En la estonteco, vi povas ŝanĝi la pasvorton de la uzanto klakante aŭ sur lia nomo aŭ sur fiksita pasvorto.

Kreante virtualan reton

Por krei virtualan reton, la uzanto devas iri al la langeto Aldonu reton. De punkto Uzanto ĉi tio povas esti farita per la paĝo hejmo — la ĉefpaĝo de la Web-GUI, kiu montras la ZeroTier-adreson de ĉi tiu retregilo kaj enhavas ligilon al la paĝo por la listo de retoj kreitaj per ĝi.

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
Sur paĝo Aldonu reton la uzanto atribuas nomon al la nove kreita reto.

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
Kiam oni aplikas la enigajn datumojn − Krei Reton la uzanto estas kondukata al paĝo kun listo de retoj, kiu enhavas: 

Reta nomo — la nomo de la reto en formo de ligilo, kiam vi alklakas ĝin, vi povas ŝanĝi ĝin 
Reta identigilo — retidentigilo
detalon — ligi al paĝo kun detalaj retaj parametroj
facila agordo - ligi al paĝo por facila agordo
membroj — ligo al la paĝo pri administrado de nodoj

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
Por plia agordo sekvu la ligilon facila agordo. Sur la paĝo, kiu malfermiĝas, la uzanto specifas gamon da IPv4-adresoj por la kreata reto. Ĉi tio povas esti farita aŭtomate premante butonon Generu retadreson aŭ permane enirante la retan retan maskon en la taŭga kampo CIDR.

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
Konfirmante sukcesan eniron de datumoj, vi devas reveni al la paĝo kun la listo de retoj uzante la butonon Reen. Je ĉi tiu punkto, la baza reto-aranĝo povas esti konsiderata kompleta.

Konektante retajn nodojn

  1. Unue, la servo ZeroTier One devas esti instalita sur la nodo, kiun la uzanto volas konekti al la reto.

    Kio estas ZeroTier One?ZeroTier Unu estas servo funkcianta sur tekkomputiloj, labortabloj, serviloj, virtualaj maŝinoj kaj ujoj, kiu disponigas ligojn al virtuala reto per virtuala reta haveno, simila al VPN-kliento. 

    Post kiam la servo estas instalita kaj komencita, vi povas konektiĝi al virtualaj retoj uzante iliajn 16-ciferajn adresojn. Ĉiu reto aperas kiel virtuala reta haveno en la sistemo, kiu kondutas same kiel regula Ethernet-haveno.
    Ligiloj al distribuoj, same kiel instalaj komandoj, troveblas sur la paĝo de la fabrikanto.

    Vi povas administri la instalitan servon per komandlinia terminalo (CLI) kun administraj/radikaj rajtoj. Sur Vindozo/MacOS ankaŭ uzante grafikan interfacon. En Android/iOS nur uzante GUI.

  2. Kontrolante la sukceson de la servo-instalado:

    CLI:

    zerotier-cli status

    Rezulto: 

    200 info ebf416fac1 1.4.6 ONLINE
    GUI:

    La fakto mem, ke la aplikaĵo funkcias kaj la ĉeesto en ĝi de linio kun Node ID kun la noda adreso.

  3. Konekti nodon al la reto:

    CLI:

    zerotier-cli join <Network ID>

    Rezulto: 

    200 join OK

    GUI:

    Vindozo: dekstre alklaku la ikonon ZeroTier Unu en la sistempleto kaj elektante la eron - Aliĝu al Reto.

    Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
    macOS: Lanĉu la aplikaĵon ZeroTier Unu en la trinkeja menuo, se ne jam lanĉita. Alklaku la piktogramon ⏁ kaj elektu Aliĝu al Reto.

    Android/iOS: + (plus bildo) en la apo

    Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
    En la kampo kiu aperas, enigu la retan regilon specifitan en la GUI Reta identigilo, kaj premu Aliĝu/Aldonu Reton.

  4. Asigni IP-adreson al gastiganto
    Nun ni revenas al la reta regilo kaj sur la paĝo kun listo de retoj sekvu la ligilon membroj. Se vi vidas bildon similan al ĉi tiu sur la ekrano, tio signifas, ke via retregilo ricevis peton por konfirmi la konekton al la reto de la konektita nodo.

    Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
    Sur ĉi tiu paĝo ni lasas ĉion kiel ĝi estas nuntempe kaj sekvas la ligilon IP-asigno iru al la paĝo por atribui IP-adreson al la nodo:

    Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
    Post atribui la adreson, alklaku la butonon reen revenu al la paĝo de la listo de konektitaj nodoj kaj agordu la nomon - Membronomo kaj marku la markobutonon por rajtigi la nodon en la reto - Rajtigita. Cetere, ĉi tiu markobutono estas tre oportuna afero por malkonekti/konekti de la gastiga reto estonte.

    Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
    Konservu ŝanĝojn per la butono refreŝigi.

  5. Kontrolante la konektan staton de la nodo al la reto:
    Por kontroli la konektan staton sur la nodo mem, rulu:
    CLI:

    zerotier-cli listnetworks

    Rezulto:

    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:

    Reta stato devus esti bona

    Por konekti la ceterajn nodojn, ripetu operaciojn 1-5 por ĉiu el ili.

Kontrolante retkonektecon de nodoj

Mi faras ĉi tion rulante la komandon ping sur la aparato konektita al la reto, kiun mi nuntempe administras.

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1
En la ekrankopio de la Ret-GUI-regilo vi povas vidi tri nodojn konektitajn al la reto:

  1. ZTNCUI - 10.10.10.1 - mia retregilo kun GUI - VDS en unu el la RuVDS DC-oj. Por normala laboro ne necesas aldoni ĝin al la reto, sed mi faris tion ĉar mi volas bloki aliron al la retinterfaco de ekstere. Pli pri tio poste. 
  2. MyComp - 10.10.10.2 - mia laborkomputilo estas fizika komputilo
  3. Rezerva - 10.10.10.3 — VDS en alia DC.

Tial de mia laborkomputilo mi kontrolas la haveblecon de aliaj nodoj per la komandoj:

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

La uzanto rajtas uzi aliajn ilojn por kontroli la haveblecon de nodoj en la reto, ambaŭ enkonstruitaj en la OS kaj kiel NMAP, Altnivela IP-Skanilo, ktp.

Ni kaŝas aliron al la retkontrolilo GUI de ekstere.

Ĝenerale, mi povas redukti la verŝajnecon de neaŭtorizita aliro al la VDS, sur kiu mia retregilo situas uzante fajroŝirmilon en mia persona konto RuVDS. Ĉi tiu temo estas pli verŝajna por aparta artikolo. Tial ĉi tie mi montros kiel provizi aliron al la GUI-regilo nur de la reto, kiun mi kreis en ĉi tiu artikolo.

Por fari tion, vi devas konekti per SSH al la VDS sur kiu troviĝas la regilo kaj malfermi la agordan dosieron per la komando:

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

En la malfermita dosiero, post la linio "HTTPS_PORT=3443" enhavanta la adreson de la haveno, ĉe kiu malfermiĝas la GUI, vi devas aldoni plian linion kun la adreso, ĉe kiu malfermos la GUI - en mia kazo ĝi estas HTTPS_HOST=10.10.10.1. .XNUMX. 

Poste mi konservos la dosieron

Сtrl+C
Y
Enter 

kaj rulu la komandon:

systemctl restart ztncui

Kaj jen ĝi, nun la GUI de mia retregilo disponeblas nur por retaj nodoj 10.10.10.0.24.

Anstataŭ konkludo 

Jen kie mi volas fini la unuan parton de la praktika gvidilo por krei virtualajn retojn bazitajn sur ZeroTier. Mi antaŭĝojas viajn komentojn. 

Intertempe, por pasigi la tempon ĝis la publikigo de la sekva parto, en kiu mi rakontos al vi kiel kombini virtualan reton kun fizika, kiel organizi reĝimon "voja militisto" kaj ion alian, mi sugestas, ke vi provu. organizi vian propran virtualan reton uzante privatan retan regilon kun GUI bazita sur VDS de la vendoplaco plu ejo RUVDS. Plie, ĉiuj novaj klientoj havas senpagan provperiodon de 3 tagoj!

PS Jes! Mi preskaŭ forgesis! Vi povas forigi nodon de la reto uzante komandon en la CLI de ĉi tiu nodo.

zerotier-cli leave <Network ID>

200 leave OK

aŭ la Forigi komandon en la klienta GUI sur la nodo.

-> Enkonduko. Teoria parto. Smart Ethernet Switch por Planedo Tero
-> Praktika gvidilo por konstrui virtualajn retojn. Parto 1
-> Praktika gvidilo por konstrui virtualajn retojn. Parto 2

Funkciigita de ZeroTier. Praktika gvidilo por konstrui virtualajn retojn. Parto 1

fonto: www.habr.com

Aldoni komenton