Post

Networking senza limiti: Creare un ambiente isolato con Proxmox, OpenSense e TailScale!

Riflettendo sui primi giorni in cui ho acquisito le basi delle reti, una delle sfide più rilevanti è stata la complessità nel testare e apprendere senza disturbare l’intera rete locale. Ogni tentativo di esperimento comportava il rischio di interrompere l’accesso a Internet, rendendo inaccessibili tutte le risorse. La mancanza di connettività implicava soprattutto la perdita dell’accesso alle principali fonti di informazioni online. In questo articolo, desidero illustrarti come è possibile acquisire conoscenze sul networking in un ambiente completamente isolato, senza la necessità di hardware specializzato, attraverso l’utilizzo combinato di Proxmox, OPNsense e Tailscale.

Installazione di OPNsense su Proxmox

Iniziamo installando OPNsense su Proxmox. Darò per scontato che avrete le conoscenze per creare delle VM su proxmox e per installare Opnsense. Su youtube potete trovare molti video che mostrano come farlo.

Per la nostra configurazione di esempio richiede però alcune configurazioni specifiche per le interfacce di rete. Create la VM di OpnSense con due adattatori di rete: uno per la rete esistente e uno per la nuova rete virtuale che creeremo.

Desktop View

È importante che l’adattatore network destinato per la rete virtuale abbia il valore tag specificato come mostrato nell’immagine.

A che cosa servono questi tag? sono identificatori numerici che vengono assegnati ai pacchetti di dati all’interno di una rete, consentendo di separare il traffico in segmenti logici distinti, noti come VLAN. Questi tag vengono utilizzati per mantenere l’isolamento tra diverse reti virtuali che condividono la stessa infrastruttura fisica di rete.

Nel Nostro esempio metteremo 101 in riferimento della nostra subnet di test scelta 192.168.101.0/24 per creare un ambiente di rete isolato in cui può eseguire test senza influire sulla rete principale.

Create una VM da inserire nella rete virtuale

Create un altra VM, nel nostro esempio facciamo una VM con Ubuntu nella specifica dell’adattatore network andremo a valorizzare il tag assegnato in precedenza in questo modo la VM creata si troverà nella rete virtuale configurata di opnsense

seguite la procedura guidata di installazione di OPNsense, configurando le interfacce di rete e il firewall in base alle vostre esigenze di sicurezza.

ho scritto in passato un paio di articolo per come definirle e per avere un idea di cosa dichiarare nelle regole firewall:

Configurazione Tailscale su OPNsense

Una volta seguita l’installazione guidata di OPNsense tramite browser dalla vostra VM presente nella rete virtuale, procediamo con l’installazione di Tailscale su di esso. Accedete alla shell di OPNsense e esegui i seguenti comandi1.

1
2
3
4
5
6
opnsense-code ports
cd /usr/ports/security/tailscale
make install
service tailscaled enable
service tailscaled start
tailscale up

Una volta eseguito l’ultimo comando e fatto partire tailscale, inserite nel browser l’indirizzo che vi comparirà come da screen:

Desktop View

una volta autenticati da quella dashboard sarà possibile gestire anche le acl di chi potrà connettersi alla rete, oltre a verificare gli host attivi su tailscale

ritornate su opnsense e assegnata alla rete virtuale appena creata l’interfaccia e abilitatela:

Desktop View

Desktop View

in fine, abilitate il routing alla subnet virtuale creata:

da shell su opnsense

1
tailscale up --advertise-routes=192.168.101.0/24

e dalla admin console di tailscale:

Desktop View

per maggiori info potete trovare informazioni su questi documenti

Come aggiornare Tailscale su OPNsense

L’evoluzione tecnologica richiede un costante aggiornamento degli strumenti che utilizziamo e per Tailscale, non fa eccezione.

Accediamo alla shell Proxmox. Selezioniamo l’opzione appropriata nel menu, comunemente l’opzione 8, per accedere alla Shell.

Prima di procedere con l’aggiornamento, è consigliato verificare lo stato corrente di Tailscale. Utilizziamo il comando tailscale status per assicurarci che la connessione sia attiva.

Digitiamo il seguente comando, che scaricherà una copia nuova del repository BSD ports:

1
opnsense-code ports

Cambiamo posizione e dirigiamoci nella directory corretta che ospita il codice di ports. Utilizziamo il comando:

1
cd /usr/ports/security/tailscale

Prima di procedere con l’installazione, dobbiamo disinstallare la versione esistente. Eseguiamo il comando:

1
make deinstall

In alcuni casi, potrebbe esserci una discrepanza tra la versione riportata dal client e quella installata. Risolviamo questo problema eseguendo:

1
make clean

Procediamo con l’installazione della nuova versione:

1
make install

Verifichiamo sia stato aggiornato correttamente utilizzando il comando:

1
tailscale version

Per garantire che tutte le modifiche abbiano effetto, riavviamo il servizio con:

1
service tailscaled restart

Infine, controlliamo l’interfaccia di amministrazione per confermare l’aggiornamento. Dovremmo visualizzare la nuova versione, confermando così il successo della procedura.

Seguendo questi passaggi, potrai mantenere il tuo sistema Tailscale su OpenSense sempre aggiornato, garantendo le ultime funzionalità e miglioramenti alla tua connettività sicura.

Ricapitolando

Quindi facciamo un breve riepilogo di quanto fatto e cercato di ottenere:

  • Abbiamo creato una macchina virtuale OpenSense con due interfacce di rete. Una di queste interfacce di rete appartiene alla mia attuale rete locale, alla mia LAN corrente, e utilizza il DHCP che tutti gli altri dispositivi in questa rete locale utilizzano.

  • Successivamente, abbiamo aggiunto una seconda scheda di rete virtuale (NIC) a quella macchina virtuale OpenSense, con un tag VLAN di 101. Questo significa che non aveva un server DHCP dedicato, quindi ha proceduto creando autonomamente uno.

  • Inoltre, abbiamo creato una macchina virtuale Ubuntu con una scheda di rete virtuale contrassegnata dal tag 101, in modo che ottenesse un indirizzo IP dalla istanza OpenSense virtualizzata.

Da qui, si può dedurre che è possibile creare diverse macchine virtuali, svolgere qualsiasi attività desiderata e trattare l’istanza OpenSense proprio come se fosse un firewall reale.


Questo post è sotto licenza CC BY 4.0 a nome dell'autore.

DISCLAIMER: Questo blog non rappresenta una testata giornalistica in quanto viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge N°62 del 07/03/2001. Leggi di più

© Cybertome. Alcuni diritti riservati.

Servizio offerto da Jekyll con tema Chirpy