Una VPN (acronimo di
Virtual Private Network) può essere considerata come un'estensione di una rete privata che si occupa di instaurare dei "collegamenti" tra due o più sistemi che debbono scambiarsi dati in modo sicuro, utilizzando una rete condivisa o comunque pubblica qual è Internet.
Una rete VPN permette di scambiare dati in modo simile a quanto accade in una connessione privata punto-punto. L'approccio utilizzato dà modo di rendere il computer remoto parte di una rete privata interna alla struttura aziendale creando un "tunnel" virtuale attraverso la rete Internet.
Per simulare un collegamento punto-punto, i dati vengono incapsulati con l'aggiunta di un'intestazione che fornisce le informazioni di routing e cifrati in modo da renderne possibile la lettura da parte di eventuali aggressori, sprovvisti delle necessarie chiavi crittografiche.
Tutti i sistemi Windows integrano il supporto per le reti VPN: lo stesso Windows XP può operare sia in modalità client che fungere da server VPN. Purtroppo, però, configurato in questa seconda modalità, Windows XP non accetta più di una connessione in ingresso.
OpenVPN è una valida soluzione opensource, disponibile per svariati sistemi operativi, che consente di implementare una VPN a costo zero senza quindi doversi necessariamente rivolgere a Windows Server.
Scaricare ed installare OpenVPN per WindowsL'ultima versione del pacchetto
OpenVPN, contenente anche l'interfaccia grafica (GUI), in precedenza distribuita separatamente, è prelevabile – nella versione per Windows – facendo riferimento
a questa pagina quindi cliccando sul link
openvpn-2.1.1-install.exe.
OpenVPN può essere configurato, in Windows, come servizio di sistema: ciò significa che il programma verrà automaticamente avviato insieme con il sistema operativo. Il software può essere impostato affinché abiliti automaticamente il "tunnel" oppure effettui quest'operazione solamente su esplicita richiesta dell'utente.
Per avviare l'installazione di OpenVPN, è sufficiente fare doppio clic sul file eseguibile precedentemente scaricato. Nel caso in cui si utilizzi un "personal firewall", si dovrà acconsentire alle comunicazioni messe in atto da OpenVPN. Alla comparsa del messaggio che informa circa il tentativo di installazione di un driver sconosciuto, si dovrà rispondere affermativamente accettandone il caricamento sul sistema in uso.
La procedura d'installazione di OpenVPN è chiara e semplice da condurre a termine.
L'unica riflessione dovrà essere effettuata alla comparsa della finestra per la scelta dei componenti da installare. Di solito, le impostazioni predefinite sono valide per la maggior parte di casi.

Nell'elenco che riportiamo di seguito, tuttavia, indichiamo quali componenti si rivelano indispensabili per un'installazione server e quali su una macchina client:
OpenVPN User-Space Components: client server
OpenVPN GUI: client
OpenVPN RSA Certificate Management Scripts: server
OpenVPN Service: server
OpenVPN File Associations: client server
OpenSSL DLLs: client server
OpenSSL Utilities: client server
TAP Virtual Ethernet Adapter: client server
Add OpenVPN to PATH: client server
Add Shortcuts to Start Menu: client server
Installando la GUI di OpenVPN (scelta consigliata), non appena si cliccherà sull'omonima icona aggiunta al desktop di Windows, nella traybar in basso a destra apparirà un'indicazione circa l'avvenuto avvio del programma.
Configurazione di OpenVPN
Accingiamoci a configurare OpenVPN con l'intento di creare il primo "tunnel" tra due sistemi Windows.
Innanzi tutto, accediamo al menù
Start, Programmi, OpenVPN e verifichiamo le voci aggiunte dalla procedura d'installazione:
Utilities, Generate a static OpenVPN key consente di creare una chiave crittografica utilizzabile per generare i "tunnel".
Shortcuts, OpenVPN configuration file directory permette di aprire direttamente la cartella
c:\programmi\OpenVPN\config all'interno della quale sono conservate le configurazioni dell'applicazione.
Shortcuts, OpenVPN log file directory per accedere rapidamente alla directory
c:\programmi\OpenVPN\log che contiene i file di log delle attività del programma.
Shortcuts, OpenVPN Sample Configuration Files apre la cartella contenente alcuni file di configurazione di esempio per OpenVPN.
OpenVPN GUI avvia l'interfaccia grafica di OpenVPN aggiungendo un'icona nella traybar di Windows (generalmente, in basso a destra).
Prima di poter fare in modo che due sistemi siano in grado di connettersi attraverso un "tunnel" OpenVPN, è necessario generare una chiave che sarà impiegata per crittografare tutte le comunicazioni. Questa chiave deve essere "installata" su entrambi i sistemi poiché, nel caso di una crittografia a chiave simmetrica, entrambi "gli interlocutori" useranno la medesima chiave.
Per procedere, è sufficiente cliccare sul link
Generate a static OpenVPN key.Il programma mostrerà una finestra a caratteri testuali invitando a premere un tasto qualsiasi per avviare la pocedura di generazione della chiave. OpenVPN produrrà una chiave crittografica a 2048 bit che sarà memorizzata nella sottocartella
config con il nome di
key.txt.

Per creare una prima connessione di test con OpenVPN, si inizi col copiare il file sample.ovpn dalla cartella contenente i file di esempio nella cartella config.
In Windows, l'estensione di default utilizzata per i file di configurazione di OpenVPN è .ovpn mentre in Linux è .conf.
Dopo aver avviato OpenVPN GUI, cliccando sull'icona nella traybar con il tasto destro del mouse, si clicchi su Edit config: verrà così immediatamente aperto il contenuto del file di configurazione sample.ovpn.
In questo file è necessario, innanzi tutto, modificare alcuni parametri essenziali. In particolare, vanno indicati il nome o l'indirizzo IP dell'altro host coinvolto nella VPN, il nome del file contenente la chiave, l'indirizzo IP della VPN e l'host.
Si scelga quindi un indirizzo IP per ciascun host della VPN: ad esempio, 10.3.0.1, 10.3.0.2 e così via.
Ecco un esempio di configurazione:
Computer A (IP assegnato dal provider Internet: 87.18.100.100):
remote 87.20.100.100
ifconfig 10.3.0.1 255.255.255.0
secret key.txt
Computer B (IP assegnato dal provider Internet: 87.20.100.100):
remoto 87.18.100.100
ifconfig 10.3.0.2 255.255.255.0
secret key.txt
Com'è facile intuire, remote consente di definire il sistema che è situato dall'altra parte del "tunnel" mentre ifconfig permette di assegnare un IP ed una netmask all'interfaccia "tunnel" locale. La direttiva secret, invece, indica ad OpenVPN il file contenente la chiave statica precedentemente generata.
Gli IP 87.18.100.100 e 87.20.100.100 sono stati scelti in modo casuale. Si pensi a tali IP come agli indirizzi assegnati all'interfaccia di rete Ethernet "reale".
In una comunicazione OpenVPN sono insomma quattro le interfacce di rete coinvolte: due sono "reali" (schede di rete Ethernet dei due rispettivi sistemi remoti) mentre le altre due sono "virtuali" (TUN/TAP).
Una volta configurato OpenVPN sul primo host, è possibile replicare la configurazione sul secondo sistema (modificando ovviamente gli IP; vedasi l'esempio di massima sopra riportato).
A questo punto, avviando OpenVPN GUI su entrambe le macchine remote e cliccando su Connect, l'icona della traybar dovrebbe visualizzare due computer di colore verde.
Il colore giallo viene mostrato ogniqualvolta OpenVPN tenti di stabilire una connessione.

Cliccando con il tasto destro sull'icona di OpenVPN GUI nella traybar quindi selezionando
Show Status, si otterranno maggiori informazioni sulla connessione VPN appena avviata.
E' possibile "testare" il corretto funzionamento del "tunnel" effettuando, ad esempio, un semplice
ping dal prompt dei comandi. Esempio:
ping 10.3.0.2 dall'host A verso il computer B.
Ultimi commenti
da Freno >Qualcuno mi sa dire quali sono i risultati in termini prestazionali? Io vorrei creare una rete tra 2 luoghi per condividere il software gestionale i cui archivi sono di una decina di Mb. In rete locale ovviamente la cosa è velocissima...
Secondo voi potrei ottenere risultati soddisfacenti?
da Michele Nasi >Le prestazioni dipendono essenzialmente dall'ampiezza di banda disponibile e dalle connessioni utilizzate dai sistemi che partcipano alla VPN. L'interfaccia virtuale di OpenVPN ha ben poco impatto sulla latenza.
Nel tuo caso bisogna vedere in che modo si comporta il gestionale e, soprattutto, verificare in che modo interagisce con i suoi database.
Se impiega, ad esempio, una base dati SQL Server o MySQL non dovrebbero esserci problemi.
da Stefano S. >Se utilizzi un database di tipo client/server, come ad esempio Sql Server, nessun problema.
Se invece utilizzi un database tradizionale condiviso, ad esempio Access, la soluzione non è praticabile per ragioni di prestazioni e di affidabilità.
da MauroGilles >E' possibile collegare ad un "Server" più client remoti contemporaneamente??
Io ho un Server con un database a cui dovrebbero accedere diversi uffici anche contemporaneamente.
Attendo fiducioso. Grazie
da Freno >Il gestionale (del quale purtroppo non ricordo il nome) è un prodotto che è stato pagato caro e amaro... quindi non credo proprio che poggi su access.. ma molto probabilmente su mysql... Cmq appena avrò notizie certe le riferirò.
La banda è quella normalissima di alice flat a 20 mega NOMINALI! Diciamo che internet viaggia più che decentemente...
Io provai (qualche mese fa) con la rete virtuale di Hamachi ma il risultato fu a dir poco pessimo!
Leggi tutti i commenti