Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
Continuiamo il racconto su ZeroTier, dalla teoria esposta nell’articolo “Switch Ethernet intelligente per il pianeta Terra", passo alla pratica in cui:

  • Creiamo e configuriamo un controller di rete privata
  • Creiamo una rete virtuale
  • Configuriamo e colleghiamo i nodi ad esso
  • Controlliamo la connettività di rete tra di loro
  • Blocchiamo l'accesso alla GUI del controller di rete dall'esterno

Сетевой COUNTROLLER

Come accennato in precedenza, per creare reti virtuali, gestirle e connettere i nodi, l'utente ha bisogno di un controller di rete, un'interfaccia grafica (GUI) per la quale esiste in due forme:

Opzioni GUI ZeroTier

  • Uno dello sviluppatore ZeroTier, disponibile come soluzione SaaS cloud pubblico con quattro piani di abbonamento, incluso quello gratuito, ma limitato nel numero di dispositivi gestiti e nel livello di supporto
  • Il secondo proviene da uno sviluppatore indipendente, leggermente semplificato nelle funzionalità, ma disponibile come soluzione open source privata per l'utilizzo in sede o su risorse cloud.

Nella mia pratica li ho usati entrambi e di conseguenza ho finalmente optato per il secondo. La ragione di ciò sono stati gli avvertimenti dello sviluppatore.

“I controller di rete fungono da autorità di certificazione per le reti virtuali ZeroTier. I file contenenti le chiavi segrete del controller devono essere custoditi con cura e archiviati in modo sicuro. La loro compromissione consente ad aggressori non autorizzati di creare configurazioni di rete fraudolente e la loro perdita porta alla perdita della capacità di controllare e gestire la rete, rendendola di fatto inutilizzabile."

Collegamento alla documentazione

E anche segni della tua paranoia sulla sicurezza informatica :) 

  • Anche se arriva Cheburnet, devo comunque avere accesso al mio controller di rete;
  • Solo io dovrei usare il controller di rete. Se necessario, fornire accesso ai vostri rappresentanti autorizzati;
  • Dovrebbe essere possibile limitare l'accesso al controller di rete dall'esterno.

In questo articolo, non vedo molto senso soffermarmi separatamente su come distribuire un controller di rete e la relativa GUI su risorse fisiche o virtuali locali. E ci sono anche 3 ragioni per questo: 

  • ci saranno più lettere del previsto
  • già riguardo a questo detto sullo sviluppatore della GUI GitHab
  • l'argomento dell'articolo riguarda qualcos'altro

Pertanto, scegliendo il percorso di minor resistenza, utilizzerò in questa storia un controller di rete con una GUI basata su VDS, creato da dal modello, gentilmente sviluppato dai miei colleghi di RuVDS.

Configurazione iniziale

Dopo aver creato un server dal modello specificato, l'utente ottiene l'accesso al controller Web-GUI tramite un browser accedendo a https:// :3443

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
Per impostazione predefinita, il server contiene già un certificato TLS/SSL autofirmato pregenerato. Questo mi basta, visto che ne blocco l'accesso dall'esterno. Per coloro che desiderano utilizzare altri tipi di certificati, c'è istruzioni di installazione sullo sviluppatore della GUI GitHab.

Quando l'utente accede per la prima volta Accedi con login e password predefiniti - Admin и parola d'ordine:

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
Suggerisce di cambiare la password predefinita con una personalizzata

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
Lo faccio in modo leggermente diverso: non cambio la password di un utente esistente, ma ne creo una nuova - Crea utente.

Ho impostato il nome del nuovo utente - Nome utente:
Ho impostato una nuova password - Inserire una nuova password
Confermo la nuova password - Reinserire la password:

I caratteri inseriti fanno distinzione tra maiuscole e minuscole: fai attenzione!

Casella di controllo per confermare la modifica della password al prossimo accesso - Cambia password al prossimo accesso: Non festeggio. 

Per confermare i dati inseriti premere Impostare la password:

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
Quindi: eseguo nuovamente l'accesso - Esci / Accedi, già sotto le credenziali del nuovo utente:

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
Successivamente, vado alla scheda utenti: Utenti ed eliminare l'utente Admincliccando sull'icona del cestino situata a sinistra del suo nome.

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
In futuro sarà possibile modificare la password dell'utente cliccando sul suo nome oppure sulla password impostata.

Creazione di una rete virtuale

Per creare una rete virtuale, l'utente deve accedere alla scheda Aggiungi rete. Dal punto Utente questo può essere fatto attraverso la pagina Casa — la pagina principale della Web-GUI, che visualizza l'indirizzo ZeroTier di questo controller di rete e contiene un collegamento alla pagina per l'elenco delle reti create attraverso di essa.

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
Sulla pagina Aggiungi rete l'utente assegna un nome alla rete appena creata.

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
Quando si applicano i dati di input − Creare rete l'utente viene indirizzato a una pagina con un elenco di reti, che contiene: 

Nome della rete — il nome della rete sotto forma di collegamento, facendo clic su di esso è possibile modificarlo 
ID di rete — identificatore di rete
dettaglio — collegamento a una pagina con parametri di rete dettagliati
facile installazione - collegamento alla pagina per una facile configurazione
Persone — collegamento alla pagina di gestione del nodo

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
Per ulteriori impostazioni seguire il collegamento facile installazione. Nella pagina che si apre, l'utente specifica un intervallo di indirizzi IPv4 per la rete che si sta creando. Questo può essere fatto automaticamente premendo un pulsante Genera indirizzo di rete oppure manualmente inserendo la maschera di rete nell'apposito campo CIDR.

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
Dopo aver confermato l'avvenuto inserimento dei dati, è necessario tornare alla pagina con l'elenco delle reti utilizzando il pulsante Indietro. A questo punto la configurazione di base della rete può essere considerata completata.

Collegamento dei nodi della rete

  1. Per prima cosa è necessario installare il servizio ZeroTier One sul nodo che l'utente vuole connettere alla rete.

    Cos'è ZeroTier One?Livello Uno Zero è un servizio in esecuzione su laptop, desktop, server, macchine virtuali e contenitori che fornisce connessioni a una rete virtuale tramite una porta di rete virtuale, simile a un client VPN. 

    Una volta installato e avviato il servizio, puoi connetterti alle reti virtuali utilizzando i loro indirizzi a 16 cifre. Ogni rete appare come una porta di rete virtuale sul sistema, che si comporta proprio come una normale porta Ethernet.
    È possibile trovare collegamenti alle distribuzioni e ai comandi di installazione sulla pagina del produttore.

    È possibile gestire il servizio installato tramite un terminale a riga di comando (CLI) con diritti di amministratore/root. Su Windows/MacOS utilizzando anche un'interfaccia grafica. In Android/iOS solo utilizzando la GUI.

  2. Verifica del successo dell'installazione del servizio:

    CLI:

    zerotier-cli status

    Il risultato: 

    200 info ebf416fac1 1.4.6 ONLINE
    GUI:

    Il fatto stesso che l'applicazione sia in esecuzione e la presenza in essa di una riga con Node ID con l'indirizzo del nodo.

  3. Connettere un nodo alla rete:

    CLI:

    zerotier-cli join <Network ID>

    Il risultato: 

    200 join OK

    GUI:

    Windows: fare clic con il tasto destro sull'icona Livello Uno Zero nella barra delle applicazioni e selezionando l'elemento - Unisciti alla rete.

    Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
    Mac OS: Esegui applicazione Livello Uno Zero nel menu della barra, se non già avviato. Fare clic sull'icona ⏁ e selezionare Unisciti alla rete.

    Android/iOS: + (più immagine) nell'app

    Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
    Nel campo visualizzato, inserisci il controller di rete specificato nella GUI ID di retee premere Unisciti/Aggiungi rete.

  4. Assegnazione di un indirizzo IP a un host
    Ora torniamo al controller di rete e nella pagina con l'elenco delle reti seguiamo il collegamento Persone. Se sullo schermo vedi un'immagine simile a questa, significa che il controller di rete ha ricevuto una richiesta di conferma della connessione alla rete dal nodo connesso.

    Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
    In questa pagina lasciamo tutto così com'è per ora e seguiamo il collegamento Assegnazione IP vai alla pagina per l'assegnazione di un indirizzo IP al nodo:

    Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
    Dopo aver assegnato l'indirizzo, fare clic sul pulsante Di ritorno tornare alla pagina dell'elenco dei nodi connessi e impostare il nome - Nome del membro e seleziona la casella di controllo per autorizzare il nodo sulla rete - Autorizzato. A proposito, questa casella di controllo è molto comoda per disconnettersi/connettersi dalla rete host in futuro.

    Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
    Salvare le modifiche utilizzando il pulsante ricaricare.

  5. Verifica dello stato di connessione del nodo alla rete:
    Per verificare lo stato della connessione sul nodo stesso, eseguire:
    CLI:

    zerotier-cli listnetworks

    Il risultato:

    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:

    Lo stato della rete dovrebbe essere OK

    Per connettere i restanti nodi, ripetere le operazioni 1-5 per ciascuno di essi.

Controllo della connettività di rete dei nodi

Lo faccio eseguendo il comando ping sul dispositivo connesso alla rete che sto attualmente gestendo.

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1
Nello screenshot del controller Web-GUI puoi vedere tre nodi collegati alla rete:

  1. ZTNCUI-10.10.10.1 - il mio controller di rete con GUI - VDS in uno dei controller di dominio RuVDS. Per il normale lavoro non è necessario aggiungerlo alla rete, ma l'ho fatto perché voglio bloccare l'accesso all'interfaccia web dall'esterno. Ne parleremo più avanti. 
  2. MyComp - 10.10.10.2 - il mio computer di lavoro è un PC fisico
  3. Backup - 10.10.10.3 — VDS in un altro DC.

Quindi dal mio computer di lavoro verifico la disponibilità di altri nodi con i comandi:

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

L'utente ha il diritto di utilizzare altri strumenti per verificare la disponibilità dei nodi sulla rete, sia integrati nel sistema operativo che come NMAP, Advanced IP Scanner, ecc.

Nascondiamo l'accesso alla GUI del controller di rete dall'esterno.

In generale, posso ridurre la probabilità di accesso non autorizzato al VDS su cui si trova il mio controller di rete utilizzando un firewall nel mio account personale RuVDS. Questo argomento è più probabile per un articolo separato. Pertanto, qui mostrerò come fornire l'accesso al controller GUI solo dalla rete che ho creato in questo articolo.

Per fare ciò è necessario collegarsi tramite SSH al VDS su cui si trova il controller e aprire il file di configurazione utilizzando il comando:

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

Nel file aperto, dopo la riga "HTTPS_PORT=3443" contenente l'indirizzo della porta su cui si apre la GUI, è necessario aggiungere un'ulteriore riga con l'indirizzo su cui si aprirà la GUI - nel mio caso è HTTPS_HOST=10.10.10.1 .XNUMX. 

Successivamente salverò il file

Сtrl+C
Y
Enter 

ed esegui il comando:

systemctl restart ztncui

E questo è tutto, ora la GUI del mio controller di rete è disponibile solo per i nodi di rete 10.10.10.0.24.

Invece di una conclusione 

Voglio concludere qui la prima parte della guida pratica alla creazione di reti virtuali basate su ZeroTier. Non vedo l'ora di ricevere i tuoi commenti. 

Nel frattempo, per ingannare il tempo fino alla pubblicazione della parte successiva, in cui vi racconterò come abbinare una rete virtuale ad una fisica, come organizzare una modalità “road Warrior” e qualcos'altro, vi consiglio di provare organizzare la propria rete virtuale utilizzando un controller di rete privata con GUI basata su VDS dal marketplace in poi sito web RUVDS. Inoltre, tutti i nuovi clienti hanno un periodo di prova gratuito di 3 giorni!

PS SÌ! Ho quasi dimenticato! È possibile rimuovere un nodo dalla rete utilizzando un comando nella CLI di questo nodo.

zerotier-cli leave <Network ID>

200 leave OK

o il comando Elimina nella GUI del client sul nodo.

-> Introduzione. Parte teorica. Switch Ethernet intelligente per il pianeta Terra
-> Una guida pratica per costruire reti virtuali. Parte 1
-> Una guida pratica per costruire reti virtuali. Parte 2

Alimentato da ZeroTier. Una guida pratica per costruire reti virtuali. Parte 1

Fonte: habr.com

Aggiungi un commento