Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
Fortsætter historien om ZeroTier fra teorien skitseret i artiklen "Smart Ethernet-switch til Planet Earth", går jeg videre til praksis, hvor:

  • Lad os oprette og konfigurere en privat netværkscontroller
  • Lad os skabe et virtuelt netværk
  • Lad os konfigurere og forbinde noder til det
  • Lad os tjekke netværksforbindelsen mellem dem
  • Lad os blokere adgangen til netværkscontrollerens GUI udefra

Netværkscontroller

Som tidligere nævnt, for at oprette virtuelle netværk, administrere dem samt forbinde noder, har brugeren brug for en netværkscontroller, en grafisk grænseflade (GUI), som findes i to former:

ZeroTier GUI-indstillinger

  • En fra udvikleren ZeroTier, tilgængelig som en offentlig cloud SaaS-løsning med fire abonnementsplaner, inklusive gratis, men begrænset i antallet af administrerede enheder og supportniveau
  • Den anden er fra en uafhængig udvikler, noget forenklet i funktionalitet, men tilgængelig som en privat open source-løsning til brug on-premise eller på cloud-ressourcer.

I min praksis brugte jeg begge dele, og som et resultat afgjorde jeg endelig den anden. Årsagen til dette var bygherrens advarsler.

"Netværkscontrollere fungerer som certificeringsmyndigheder for virtuelle ZeroTier-netværk. Filer, der indeholder controllerens hemmelige nøgler, skal omhyggeligt beskyttes og arkiveres sikkert. Deres kompromis gør det muligt for uautoriserede angribere at skabe svigagtige netværkskonfigurationer, og deres tab fører til tab af evnen til at kontrollere og administrere netværket, hvilket effektivt gør det ubrugeligt."

Link til dokumentation

Og også tegn på din egen cybersikkerhedsparanoia :) 

  • Selvom Cheburnet kommer, skal jeg stadig have adgang til min netværkscontroller;
  • Kun jeg skal bruge netværkscontrolleren. Hvis det er nødvendigt, give adgang til dine autoriserede repræsentanter;
  • Det skal være muligt at begrænse adgangen til netværkscontrolleren udefra.

I denne artikel ser jeg ikke meget mening i at dvæle separat om, hvordan man implementerer en netværkscontroller og GUI'en til den på lokale fysiske eller virtuelle ressourcer. Og det er der også 3 grunde til: 

  • der kommer flere breve end planlagt
  • om dette allerede fortalte på GUI-udvikler GitHab
  • emnet for artiklen handler om noget andet

Derfor, ved at vælge vejen til mindste modstand, vil jeg i denne historie bruge en netværkscontroller med en GUI baseret på VDS, skabt af fra skabelon, venligt udviklet af mine kollegaer fra RuVDS.

Indledende opsætning

Efter at have oprettet en server fra den angivne skabelon, får brugeren adgang til Web-GUI-controlleren gennem en browser ved at få adgang til https:// :3443

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
Som standard indeholder serveren allerede et prægenereret selvsigneret TLS/SSL-certifikat. Dette er nok for mig, da jeg blokerer adgangen til den udefra. For dem, der ønsker at bruge andre typer certifikater, er der Installations instruktioner på GUI-udvikler GitHab.

Når brugeren logger på første gang Login med standard login og adgangskode - admin и adgangskode:

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
Det foreslår at ændre standardadgangskoden til en brugerdefineret

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
Jeg gør det lidt anderledes - jeg ændrer ikke adgangskoden til en eksisterende bruger, men opretter en ny - Opret bruger.

Jeg indstillede navnet på den nye bruger - Brugernavn:
Jeg har indstillet en ny adgangskode - Indtast ny adgangskode
Jeg bekræfter den nye adgangskode - Genindtast kodeord:

De tegn, du indtaster, skelner mellem store og små bogstaver - vær forsigtig!

Afkrydsningsfelt for at bekræfte ændring af adgangskode ved næste login - Skift adgangskode ved næste login: Jeg fejrer ikke. 

Tryk på for at bekræfte de indtastede data Indstil adgangskode:

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
Så: Jeg logger på igen - Log ud / Login, allerede under den nye brugers legitimationsoplysninger:

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
Dernæst går jeg til fanen brugere - Brugere og slet brugeren adminved at klikke på skraldespanden til venstre for hans navn.

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
I fremtiden kan du ændre brugerens adgangskode ved at klikke enten på hans navn eller på sæt adgangskode.

Oprettelse af et virtuelt netværk

For at oprette et virtuelt netværk skal brugeren gå til fanen Tilføj netværk. Fra punkt Bruger dette kan gøres via siden Home — Web-GUI'ens hovedside, som viser ZeroTier-adressen på denne netværkscontroller og indeholder et link til siden for listen over netværk, der er oprettet gennem den.

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
På siden Tilføj netværk brugeren tildeler et navn til det nyoprettede netværk.

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
Ved anvendelse af inputdata − Opret netværk brugeren føres til en side med en liste over netværk, som indeholder: 

Netværksnavn — navnet på netværket i form af et link, når du klikker på det, kan du ændre det 
Netværks-id — netværksidentifikator
detail — link til en side med detaljerede netværksparametre
nem opsætning - link til side for nem opsætning
medlemmer — link til nodestyringssiden

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
For yderligere opsætning følg linket nem opsætning. På siden, der åbnes, angiver brugeren en række IPv4-adresser for det netværk, der oprettes. Dette kan gøres automatisk ved at trykke på en knap Generer netværksadresse eller manuelt ved at indtaste netværksnetværksmasken i det relevante felt CIDR.

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
Når du bekræfter vellykket dataindtastning, skal du vende tilbage til siden med listen over netværk ved at bruge knappen Tilbage. På dette tidspunkt kan den grundlæggende netværksopsætning betragtes som komplet.

Tilslutning af netværksknuder

  1. Først skal ZeroTier One-tjenesten installeres på den node, som brugeren ønsker at forbinde til netværket.

    Hvad er ZeroTier One?ZeroTier One er en tjeneste, der kører på bærbare computere, desktops, servere, virtuelle maskiner og containere, der giver forbindelser til et virtuelt netværk gennem en virtuel netværksport, der ligner en VPN-klient. 

    Når tjenesten er installeret og startet, kan du oprette forbindelse til virtuelle netværk ved hjælp af deres 16-cifrede adresser. Hvert netværk vises som en virtuel netværksport på systemet, der opfører sig ligesom en almindelig Ethernet-port.
    Links til distributioner samt installationskommandoer kan findes på producentens side.

    Du kan administrere den installerede tjeneste gennem en kommandolinjeterminal (CLI) med admin/root-rettigheder. På Windows/MacOS også ved hjælp af en grafisk grænseflade. I Android/iOS kun ved hjælp af GUI.

  2. Kontrol af succesen af ​​serviceinstallationen:

    CLI:

    zerotier-cli status

    Resultat: 

    200 info ebf416fac1 1.4.6 ONLINE
    GUI:

    Selve det faktum, at applikationen kører, og tilstedeværelsen i den af ​​en linje med Node ID med nodeadressen.

  3. Tilslutning af en node til netværket:

    CLI:

    zerotier-cli join <Network ID>

    Resultat: 

    200 join OK

    GUI:

    Windows: højreklik på ikonet ZeroTier One i proceslinjen og vælge elementet - Tilmeld dig netværket.

    Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
    macOS: Start applikationen ZeroTier One i bjælkemenuen, hvis den ikke allerede er startet. Klik på ikonet ⏁ og vælg Tilmeld dig netværket.

    Android/iOS: + (plus billede) i appen

    Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
    I feltet, der vises, skal du indtaste den netværkscontroller, der er angivet i GUI Netværks-id, og tryk på Tilmeld dig/tilføj netværk.

  4. Tildeling af en IP-adresse til en vært
    Nu vender vi tilbage til netværkscontrolleren og på siden med en liste over netværk følg linket medlemmer. Hvis du ser et billede, der ligner dette på skærmen, betyder det, at din netværkscontroller har modtaget en anmodning om at bekræfte forbindelsen til netværket fra den tilsluttede node.

    Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
    På denne side lader vi alt være som det er indtil videre og følger linket IP tildeling gå til siden for at tildele en IP-adresse til noden:

    Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
    Når du har tildelt adressen, skal du klikke på knappen Tilbage vend tilbage til siden med listen over tilsluttede noder og indstil navnet - Medlems navn og marker afkrydsningsfeltet for at godkende noden på netværket - autoriseret. Forresten er dette afkrydsningsfelt en meget praktisk ting til at afbryde/tilslutte fra værtsnetværket i fremtiden.

    Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
    Gem ændringer med knappen Opfrisk.

  5. Kontrol af nodens forbindelsesstatus til netværket:
    For at kontrollere forbindelsesstatus på selve noden skal du køre:
    CLI:

    zerotier-cli listnetworks

    Resultat:

    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:

    Netværksstatus skal være OK

    For at forbinde de resterende noder skal du gentage operationer 1-5 for hver af dem.

Kontrol af netværksforbindelse af noder

Det gør jeg ved at køre kommandoen ping på den enhed, der er tilsluttet det netværk, som jeg administrerer i øjeblikket.

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1
På skærmbilledet af Web-GUI-controlleren kan du se tre noder forbundet til netværket:

  1. ZTNCUI - 10.10.10.1 - min netværkscontroller med GUI - VDS i en af ​​RuVDS DC'erne. For normalt arbejde er der ingen grund til at tilføje det til netværket, men jeg gjorde dette, fordi jeg vil blokere adgangen til webgrænsefladen udefra. Mere om dette senere. 
  2. MyComp - 10.10.10.2 - min arbejdscomputer er en fysisk pc
  3. Backup - 10.10.10.3 — VDS i en anden DC.

Derfor kontrollerer jeg fra min arbejdscomputer tilgængeligheden af ​​andre noder med kommandoerne:

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

Brugeren har ret til at bruge andre værktøjer til at kontrollere tilgængeligheden af ​​noder på netværket, både indbygget i OS og såsom NMAP, Advanced IP Scanner mv.

Vi skjuler adgangen til netværkscontrollerens GUI udefra.

Generelt kan jeg reducere sandsynligheden for uautoriseret adgang til den VDS, som min netværkscontroller er placeret på, ved hjælp af en firewall på min RuVDS personlige konto. Dette emne er mere sandsynligt for en separat artikel. Derfor vil jeg her vise, hvordan man kun giver adgang til GUI-controlleren fra det netværk, som jeg oprettede i denne artikel.

For at gøre dette skal du oprette forbindelse via SSH til VDS'en, som controlleren er placeret på, og åbne konfigurationsfilen ved hjælp af kommandoen:

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

I den åbnede fil, efter linjen "HTTPS_PORT=3443", der indeholder adressen på den port, hvor GUI'en åbner, skal du tilføje en ekstra linje med adressen, hvor GUI'en åbnes - i mit tilfælde er det HTTPS_HOST=10.10.10.1 .XNUMX. 

Dernæst vil jeg gemme filen

Сtrl+C
Y
Enter 

og kør kommandoen:

systemctl restart ztncui

Og det er det, nu er min netværkscontrollers GUI kun tilgængelig for netværksknuder 10.10.10.0.24.

I stedet for en konklusion 

Det er her, jeg vil afslutte første del af den praktiske guide til at skabe virtuelle netværk baseret på ZeroTier. Jeg ser frem til dine kommentarer. 

I mellemtiden, for at fordrive tiden indtil offentliggørelsen af ​​den næste del, hvor jeg vil fortælle dig, hvordan du kombinerer et virtuelt netværk med et fysisk, hvordan du organiserer en "road warrior" -tilstand og noget andet, foreslår jeg, at du prøver organisering af dit eget virtuelle netværk ved hjælp af en privat netværkscontroller med GUI baseret på VDS fra markedspladsen Online RUVDS. Desuden har alle nye kunder en gratis prøveperiode på 3 dage!

PS Ja! Jeg glemte næsten! Du kan fjerne en node fra netværket ved at bruge en kommando i denne nodes CLI.

zerotier-cli leave <Network ID>

200 leave OK

eller kommandoen Delete i klientens GUI på noden.

-> Introduktion. Teoretisk del. Smart Ethernet-switch til Planet Earth
-> En praktisk guide til opbygning af virtuelle netværk. Del 1
-> En praktisk guide til opbygning af virtuelle netværk. Del 2

Drevet af ZeroTier. En praktisk guide til opbygning af virtuelle netværk. Del 1

Kilde: www.habr.com

Tilføj en kommentar