Uncategorized

VPN? Sì, ma Open

La diffusione dei collegamenti internet a basso costo e a larga banda ha, tra le altre cose, trascinato anche lo sviluppo dei prodotti di Virtual Private Networking.
Ormai da molti anni le
grandi aziende fanno affidamento su VPN per ‘estendere’ la rete locale oltre i
muri dei propri uffici; con il progresso della tecnologia, prodotti di questo
tipo sono diventati disponibili anche ad aziende più piccole, via via fino a
prodotti ormai adatti anche per il mercato SOHO e addirittura per il grande
pubblico casalingo.
In questa entry voglio parlare di un prodotto di questa fascia che è
contemporaneamente open, versatile, robusto e facile da usare.
OpenVPN è un prodotto molto noto nelle comunità open, ma si tratta di una
soluzione ormai matura disponibile per Linux, Windows e MacOS e adatto a ogni utente con un minimo di background tecnico sulle reti.

Ci sono quattro principali protocolli su cui si basano le VPN commerciali. PPTP, Point to Point
Tunneling Protocol,
è il più
vecchio di tutti ed è considerato ormai obsoleto, soprattutto a causa del suo fragile meccanismo di cifratura del tunnel.
L2TP, Layer 2 Tunnelling Protocol, è una tecnologia derivata dalla
precedente, ma migliorata nei suoi punti critici, è largamente utilizzata per la sua ampia disponibilità
in sistemi oprativi e software di rete per una relativa facilità di configurazione.
IPSec, IP Security, è un protocollo di recente diffusione che gode di molto credito: è molto sicuro ed è già uno standard anche per la futura versione 6 del protocollo IP. Il suo punto debole è la complessità di
configurazione che presuppone una certa complessità nella infrastruttura e una messa in opera non alla portata di tutti.
Per ultimo citiamo le VPN basate su SSL/TSL, Secure Socket Layer/Transport Layer Security, è un
protocollo crittografico molto usato e diffuso in una moltitudine di prodotti commerciali o open source, la sua classe base OpenSSL è uno dei
componenti base della maggior parete delle macchine Linux. SSL è soprattutto noto al grande pubblico per la sua ampia diffusione nelle transazioni
internet ‘sicure’, quelle che transitano sul protocollo HTTPS, ma negli ultimi anni si è pensato di sfruttare la possibilità di crittografare con SSL un intero stack di rete,
creando in questo modo una vera e propria VPN.

Una VPN basata su SSL/TSL ha numerosi vantaggi, a parte la robusta
crittografia, un suo punto di forza è la facilità di progettazione e di realizzazione anche in caso di reti estese,
inoltre ha il vantaggio incalcolabile di operare in maniera trasparente dietro NAT/PAT, per questo è possibile
implementarlo anche su normalissime connessioni ADSL consumer, con singolo indirizzo IP dinamico.

Nel caso particolare di OpenVPN, l’unico requisito di rete necessario è quello di poter pubblicare su internet la porta 1194 del server su cui è installato il software, questo normalmente presuppone un port forwarding sul router e una modifica alla policy del firewall.
Se si ha un indirizzo IP dinamicamente aggiornato a ogni connessione è utile anche affidarsi a un fornitore di DDNS, ce ne sono di ottimi anche gratuiti (DynDNS o No-IP per dirne due).
Fatto questo è necessario scaricare e installare OpenVPN dal sito del progetto su cui è presente la versione standard e una comprensiva di una interfaccia grafica per Windows, che però a mio avviso non è
molto utile. L’installazione è semplice su Linux e semplicissima su Windows. OpenVPN crea una interfaccia di rete virtuale che funzionerà poi
da trasporto per tutto il traffico VPN.
Completata l’installazione, è necessario creare la propria Certificate Authority e generare le
chiavi pubbliche e private per il server e per ognuno dei client. OpenVPN è compatibile con il protocollo X.509, può
quindi essere integrato con una CA esistenza in azienda, altrimenti il How-To sul sito spiega semplicemente come creare una CA e distribuire i certificati con OpenVPN.
L’ultimo passo è personalizzare il file di configurazione, uno per il server e uno peri vari client. Sono
semplici file di testo e richiedono solo una manciata di righe di parametri per
funzionare, nel pacchetto di installazione ci sono alcuni esempi utili per capire il meccanismo di configurazione.

A parole il setup della struttura può sembrare complicato, ma in effetti può essere messa in funzione in mezz’ora
seguendo le istruzioni presenti sul sito che spiegano passo-passo come procedere.
Non posso negare di essere rimasto impressionato da OpenVPN, la sua versatilità e semplicità di configurazione ne fanno un prodotto ottimo, la sua portabilità permette di integrare
sostanzialmente ogni sistema informativo in uso oggi sia in ambito privato che aziendale. Infine la sua
tolleranza verso configurazioni di rete meno che lineari lo rende ancor di più adattabile ad ogni ambiente.

Standard