Virtual Private Network

 

 

 

VPN è un servizio che permette l'accesso ad una rete privata da remoto e in maniera controllata. 

Una rete locale le cui risorse sono utilizzabili da gruppi di utenti autenticati che vi possono accedere da distanze geografiche  è chiamata Intranet. 

Una connessione VPN è una connessione punto-punto "logica"  nel senso che benchè passi attraverso Internet  funziona come come una linea dedicata protetta. La protezione dei pacchetti che viaggiano attraverso Internet è garantita dal meccanismo del tunnelling.  

La tecnologia VPN può essere utilizzata per connettere  singoli client ad una LAN (client-to-LAN)  o due o più LAN fra loro (LAN-to-LAN). 

Il dispositivo che implementa una VPN è il router VPN, un router che supporta i protocolli per incapsulare  i pacchetti in uscita, criptare i dati contenuti e inoltrarli sul tunnel Internet.  Arrivati a destinazione i pacchetti vengono  decapsulati, decriptati, filtrati e inviati ad un server che effettua l'autenticazione e risponde alla richiesta del client. Le funzioni del router VPN possono essere nei casi più semplici svolte da un server VPN con una connessione diretta a Internet e con il routing abilitato.

La crittografia dei dati può essere simmetrica o asimmetrica. La prima utilizza una chiave unica per tutti la seconda utilizza due chiavi diverse, una per criptare l'altra per decriptare. Una variante è la crittografia con chiave pubblica: il mittente in questo caso manda una chiave "pubblica" a quelli a cui vuole inviare un messaggio. Quando invia il messaggio crittografa i dati con una propria chiave privata diversa da quella pubblica. I destinatari descriptano il messaggio utilizzando sia la loro chiave privata sia quella pubblica.

Le VPN utilizzano anche meccanismi per garantire l'integrità e l'autenticità dei dati, cioè assicurare che il messaggio inviato non possa essere stato alterato in qualche sua parte e che il messaggio sia effettivamente quello inviato dal mittente. Il meccanismo utilizzato è il Message Digest o hash. Hash è un codice numerico estratto dal testo del messaggio mediante una chiave e inviato al destinatario insieme al messaggio. Quest'ultimo effettua l'hash sul  messaggio ricevuto, utilizzando la stessa chiave, e lo confronta con l'hash ricevuto. Se sono uguali il messaggio è autentico.  

 I più noti algoritmi di crittografia sono

I più noti algoritmi di hash sono Message Digest 5 (MD5), Secure Hash ASlgorithm 1 (SHA-1)

Una connessione VPN può essere realizzata nella maniera più semplice installando su un PC un server VPN. Il PC dovrà essere collegato con una scheda ethernet alla LAN e con un modem ADSL al Provider Internet. La porta ADSL dovrà avere in questo caso un indirizzo pubblico.  
Il Server VPN oltre alle funzione di incapsulamento, crittografia e identificazione dovrà fare anche da router.  Un firewall interposto fra server VPN e rete locale filtra le richieste in ingresso da parte dei client in modo che soltanto filtrare le richieste dei client che chiedono l'utilizzo della rete interna. Un elemento importante della configurazione del server è il pool d'indirizzi IP. Si deve impostare sul server un blocco d'indirizzi IP che questo assegnerà dinamicamente al client che chiede la connessione. Alternativamente si può configurare il server in modo da utilizzare, se esiste, un server DHCP 
In ambiente Windows, il server VPN va installato su una macchina Windows 2003 Server attivando il servizio Routing ed Accesso Remoto. 
Sulle macchine client si deve installare il client VPN configurando una connessione remota VPN. 

 

 

 

In una seconda configurazione il Server VPN  sta dietro il router-firewall. Le due porte in questo caso hanno entrambe indirizzi privati e sul router/firewall si deve configurare il NAT 

 

 

 I pacchetti vengono incapsulati secondo due diversi protocolli 

 

Esempio VPN