Home / News / Pangolin si evolve in VPN full-tunnel self-hosted con WireGuard

Pangolin si evolve in VPN full-tunnel self-hosted con WireGuard

Pangolin si evolve. Pangolin amplia le funzionalità della sua piattaforma self-hosted introducendo Exit Node e Subnet Router per Linux. Il primo permette di instradare l’intero traffico Internet attraverso un Site remoto, trasformando Pangolin in una VPN full-tunnel.

pangolin si evolve

Trasformare un sistema di accesso remoto sicuro in una VPN capace di gestire anche l’intero traffico Internet modifica significativamente le possibili applicazioni. È quanto accade con Pangolin, che introduce gli Exit Node e li affianca a un Subnet Router per Linux. Era già stata analizzata la soluzione Pangolin come strumento per consentire l’accesso controllato a servizi e reti private senza esporli direttamente su Internet. Con l’ultima versione, il progetto estende però il suo ambito: una rete collegata a Pangolin può diventare un punto di uscita verso Internet, mentre un sistema Linux può fungere da ponte per dispositivi che non eseguono direttamente il client.

Pangolin si evolve: perché è importante

Questo significa che il traffico di un notebook o smartphone non si limita più alle risorse private definite dall’amministratore. Quando l’utente seleziona un Exit Node, anche il normale traffico Internet può attraversare il tunnel e uscire dalla connessione remota scelta. Questa è la differenza tra una VPN utilizzata principalmente per raggiungere host e subnet specifici e una configurazione full-tunnel simile a quelle offerte da WireGuard, Tailscale e soluzioni analoghe.

Pangolin mantiene comunque il suo modello centralizzato di utenti, risorse e autorizzazioni, integrando questo nuovo comportamento nell’infrastruttura self-hosted esistente.

Da split tunnel a full tunnel: cosa cambia

Fino ad ora, Pangolin operava come uno split tunnel. Ad esempio, un computer collegato tramite Pangolin poteva raggiungere la rete privata 192.168.10.0/24. Una connessione a 192.168.10.20 attraversava quindi Pangolin; aprendo invece un sito web pubblico, il browser utilizzava normalmente il gateway Internet locale.

Con gli Exit Node, l’amministratore può modificare questo comportamento per i client desiderati. Si crea una nuova risorsa privata di tipo Exit Node e la si associa a uno o più Site; il client può quindi selezionarla come uscita. A quel punto, il traffico Internet IPv4 viene instradato attraverso Pangolin e raggiunge Internet utilizzando la connessione del Site remoto.

Dal punto di vista dei server raggiunti, l’indirizzo IP pubblico osservato non è più quello della connessione fisica del client, ma quello dell’Exit Node. Questa funzione è utile quando ci si connette da una rete WiFi non affidabile o quando si desidera far uscire un computer portatile attraverso la propria connessione domestica o aziendale mentre si è altrove. Pangolin cita anche il caso dei servizi accessibili solo da specifiche aree geografiche.

Gli Exit Node supportano attualmente l’instradamento del traffico IPv4, mentre IPv6 non è ancora gestito (gli sviluppatori stanno lavorando per implementare questa funzionalità). Un Exit Node può rappresentare più siti. In tale configurazione, il client può scegliere automaticamente il punto di uscita in base a parametri quali latenza, throughput e disponibilità.

Si potrebbe immaginare un’organizzazione con gateway a Milano, Francoforte e New York: tutti diventano possibili punti di uscita dalla rete Pangolin e il sistema può utilizzare quello più appropriato. L’accesso agli Exit Node segue il modello delle altre risorse private Pangolin: l’amministratore decide quali utenti, ruoli o machine client possono utilizzarli.

Un client può usare l’Exit Node per Internet e continuare ad accedere a risorse private raggiungibili attraverso altri Site. È quindi possibile avere, ad esempio: Internet ⇒ Exit Node in Italia; Server aziendale ⇒ Site dell’azienda; NAS domestico ⇒ Site installato a casa. Pangolin mantiene rotte specifiche verso le risorse configurate.

Esiste anche l’opzione “Exit Node Takes Precedence Over Resources”: attivandola, tutto il traffico passa attraverso l’Exit Node, ignorando le altre rotte e gli alias DNS collegati alle risorse Pangolin. Questo permette di scegliere tra una configurazione ibrida e un comportamento più simile a una VPN full-tunnel tradizionale.

Il Subnet Router risolve il problema opposto

L’altra novità importante di Pangolin 1.24 è il Subnet Router per Linux. L’Exit Node prende il traffico da un client Pangolin e lo instrada verso Internet attraverso una rete remota. Il Subnet Router permette invece a dispositivi che non eseguono Pangolin di raggiungere le risorse disponibili attraverso la rete Pangolin.

Si pensi a una LAN contenente stampanti, telecamere IP, apparati IoT, macchine industriali o dispositivi sui quali non è possibile installare alcun client. Installando il machine client Pangolin su un sistema Linux presente nella stessa rete, quest’ultimo può diventare il router della subnet e instradare verso Pangolin il traffico proveniente dagli altri dispositivi.

La funzione si abilita avviando il machine client in questo modo: sudo pangolin up client --id --secret --endpoint --subnet-router

Exit Node e Subnet Router insieme

Le due funzioni introdotte con Pangolin 1.24 diventano particolarmente interessanti se considerate insieme. Un’installazione può gestire tre categorie di traffico:

  • I client Pangolin possono raggiungere selettivamente server e subnet private, mantenendo il normale split tunneling.
  • Gli stessi client possono scegliere un Exit Node e utilizzare un Site remoto come gateway Internet.
  • Intere LAN possono raggiungere risorse Pangolin attraverso un Subnet Router, anche quando i dispositivi presenti nella rete non eseguono alcun client.

Il risultato assomiglia sempre più a una vera infrastruttura di overlay networking controllata centralmente.

Pangolin self-hosted è gratuito?

La Pangolin Community Edition è la versione self-hosted gratuita del progetto ed è distribuita con licenza AGPLv3; comprende il nucleo della piattaforma necessario per gestire Site, risorse, utenti e collegamenti senza affidare a Pangolin l’hosting dell’infrastruttura. L’installazione ufficiale permette di scegliere esplicitamente la Community Edition: servono un server Linux con privilegi root e indirizzo IP pubblico, un nome di dominio che punti al server e le porte richieste dalla piattaforma. La procedura automatizzata supporta architetture AMD64 e ARM64.

Pangolin propone parallelamente una Enterprise Edition self-hosted con funzioni aggiuntive. La licenza Enterprise è gratuita per uso personale e anche per organizzazioni con ricavi annui inferiori a 100.000 dollari, ma in questo caso bisogna registrarsi e richiedere una chiave di licenza. Le organizzazioni che superano tale soglia devono acquistare una licenza commerciale.

Esiste infine Pangolin Cloud, nel quale l’infrastruttura di controllo è gestita dal fornitore anziché sul proprio server. Per chi vuole sperimentare Exit Node, routing privato e collegamenti tra LAN mantenendo il controllo dell’infrastruttura, la versione self-hosted rappresenta l’aspetto tecnicamente più interessante del progetto.

Installare Pangolin sul proprio server

La procedura consigliata dagli sviluppatori richiede un server Linux raggiungibile da Internet: sono raccomandati Ubuntu 20.04 o versioni successive oppure Debian 11 e seguenti. Serve inoltre un dominio indirizzato, tramite record DNS, verso l’IP pubblico del server.

Le porte previste dall’installazione standard sono: 80/TCP, 443/TCP, 51820/UDP, 21820/UDP. L’installer ufficiale può essere recuperato con il comando seguente e poi avviato: curl -fsSL https://static.pangolin.net/get-installer.sh | bash sudo ./installer

La procedura chiede se installare Community Edition oppure Enterprise Edition, il dominio principale, l’hostname della dashboard e l’indirizzo email utilizzato sia per Let’s Encrypt sia per l’accesso amministrativo.

Conclusioni

Pangolin amplia in modo significativo ciò che si può fare con un’installazione self-hosted. Gli Exit Node permettono di usare un Site remoto come vero punto di uscita verso Internet, mentre il Subnet Router consente di coinvolgere intere reti locali e dispositivi sui quali non è possibile installare direttamente il client.

La parte più interessante sta proprio nella combinazione delle due funzioni: Pangolin non serve più soltanto per raggiungere in sicurezza specifiche risorse private, ma può gestire anche scenari di routing più articolati tra client, LAN remote e accesso Internet. Il tutto mantenendo il controllo dell’infrastruttura sul proprio server e continuando a basare il trasporto cifrato su WireGuard.

Per chi cerca una soluzione self-hosted, gratuita nella Community Edition e sufficientemente flessibile da coprire sia accesso remoto sia VPN full-tunnel, Pangolin diventa quindi un progetto da implementare con sempre maggior interesse.

Fonte e approfondimento su pangolin si evolve: articolo originale.

* Contenuto realizzato con l'ausilio di sistemi di intelligenza artificiale.