Pangolin è una piattaforma open source self-hosted che combina le funzionalità di un reverse proxy e di un sistema di accesso remoto basato su WireGuard, progettata per esporre in modo sicuro risorse private su reti distribuite senza la necessità di aprire porte nei firewall. Utilizza tunnel crittografati e un sistema centralizzato di autenticazione e controllo degli accessi, permettendo di gestire e proteggere l’accesso a servizi Web, database, SSH e altre risorse interne con un approccio zero-trust. Abbiamo citato Pangolin tra i migliori software self-hosted del 2025.
Quando usare Pangolin
Una soluzione come Pangolin è indicata quando si desidera esporre servizi privati (ad esempio applicazioni Web, database, SSH) in modo sicuro su Internet, senza configurare complessi firewall o affidarsi a soluzioni cloud proprietarie. È particolarmente utile per chi gestisce infrastrutture distribuite, reti aziendali, home lab e progetti self-hosted, quando è fondamentale mantenere il controllo sugli accessi e sulla sicurezza delle risorse.

Zero-trust VPN: Come Funziona
La nuova versione 1.13.0 di Pangolin segna un passo importante perché introduce una VPN zero-trust completa, con applicazioni native per Windows, macOS e Linux (download client), posizionandosi come alternativa open source a servizi commerciali quali Twingate e Cloudflare ZTNA. L’acronimo ZTNA sta appunto per Zero-Trust Network Access.
L’innovazione introdotta dagli sviluppatori di Pangolin, che di base è un software open source disponibile anche come soluzione in abbonamento, abilita l’utilizzo del medesimo Site Connector in loco (download per Linux) non solo per l’accesso basato su browser, ma anche per estendere la connettività a qualsiasi risorsa che utilizzi protocolli TCP o UDP.
Architettura e installazione del Site Connector
Il Site Connector è un componente di Pangolin che viene installato in una rete remota (spesso su una macchina virtuale o VPS), tipicamente tramite Docker Compose. Serve come punto di accesso centrale in quella rete per facilitare la connettività ZTNA, consentendo agli utenti remoti di accedere a risorse interne sia basate su browser (tramite reverse proxy) sia a qualsiasi risorsa che utilizzi protocolli TCP o UDP (come SSH, RDP o database). Non è necessario installarlo su ogni singola macchina che si desidera raggiungere, ma ne basta uno per accedere a tutte le risorse che sono indirizzabili dalla specifica posizione nella rete.
Il processo di configurazione inizia sulla dashboard del server Pangolin con la definizione di un nuovo sito. L’installazione del Site Connector si concretizza modificando il file Compose di Docker per includere il connettore di Pangolin e avviare lo stack (docker compose up).
Definizione granulare delle risorse private
La filosofia zero-trust si traduce nella definizione esplicita e granulare delle risorse che si desiderano rendere accessibili. Le risorse private vengono aggiunte specificando il connettore di rete attraverso il quale raggiungerle.
La destinazione può essere configurata in due modalità distinte:
- Host: Utilizzato per specificare un indirizzo IP o una macchina specifica all’interno della rete del connettore.
- CIDR: Metodo usato per definire un intervallo di rete completo, rendendo accessibili tutte le risorse comprese in quel range.
Un elemento tecnico chiave è la possibilità di assegnare un DNS alias interno. Quando l’utente è connesso tramite il client Pangolin, l’alias è risolto localmente sul tunnel, permettendo l’uso di nomi mnemonici e intuitivi anziché indirizzi IP.
Cruciale per il modello zero-trust è il controllo degli accessi: è possibile limitare l’accesso alle risorse a utenti o ruoli specifici (ad esempio, solo sviluppatori), garantendo che esclusivamente gli utenti autorizzati possano connettersi a tali destinazioni.

Connessione e Tunneling tramite Client desktop
L’accesso alla rete configurata in precedenza, avviene tramite il client Pangolin installato sul dispositivo dell’utente.
Al primo avvio, il client richiede l’autorizzazione per installare una configurazione VPN nativa nel sistema operativo (necessaria per stabilire il tunnel a livello di sistema).
L’utente esegue il login specificando l’hostname del server self-hosted. La fase di autenticazione reindirizza l’utente al browser, dove, utilizzando le credenziali dell’account Pangolin (o tramite un Identity Provider), si completa un passo di verifica incrociata dei codici tra dashboard e client prima di concedere l’autorizzazione.
Una volta stabilita la connessione, il client sfrutta le credenziali locali per creare il tunnel. Contemporaneamente, vengono configurati i record di alias locali e le rotte di rete necessarie per gli IP di destinazione o gli intervalli CIDR definiti.
Funzionalità core: accesso a risorse esterne
Una caratteristica fondamentale del design di Pangolin ZTNA è l’efficienza nella connettività: come evidenziato in precedenza, non è richiesto l’utilizzo di un Site Connector su ogni singola macchina a cui si desidera accedere. È sufficiente posizionare un singolo connettore in rete e questo può raggiungere e facilitare l’accesso a qualsiasi altra macchina indirizzabile da quella posizione.
L’utente può lanciare un comando SSH standard verso l’IP della risorsa definita (che fa parte della rete del connettore), ottenendo una connessione SSH raw attraverso il tunnel ZTNA.
Eventuali risorse Web condivise risultano accessibili sia tramite l’alias DNS (se configurato e se la risorsa è attiva), sia direttamente tramite l’indirizzo IP, a condizione che l’IP rientri nell’intervallo configurato per l’accesso.
In definitiva, la configurazione granulare delle risorse in modalità Host (IP specifico) o CIDR (intervallo di rete), combinata con la risoluzione locale degli alias e l’utilizzo di un unico Site Connector, fornisce un meccanismo robusto e centralizzato per l’accesso remoto a risorse TCP/UDP nel rispetto dei principi zero-trust.