ZeroShell    Forum
   Feed Feed
EnglishEnglish     ItalianoItaliano     French     Spanish                Zeroshell on LinkedIn LinkedIn       Facebook      Twitter ZeroTruth una interfaccia per il Captive Portal

      Cosa è?
      Screenshots
      Licenza
      Annunci
      Mailing List
      Forum
      English Forum
      Documentazione
      FAQ
      Hardware
      Download
      Update On-line
      Kerberos Tutorial  
      Note Legali
      Contattami


  Più in dettaglio:
      Hotspot Router
      Accounting
      Shibboleth SP
      Grafici e Prestazioni
      Net Balancer
      Router UMTS
      Proxy con Antivirus
      Filtri Web
      WiFi Access Point
      OpenVPN Client
      OpenVPN Server
      QoS
      OpenDNS
      Kerberos 5
      NIS e LDAP
      Certificati X.509
      RADIUS
      VPN
      Firewall


Valid HTML 4.01 Transitional




Virtual Private Network (VPN)

VPN Host to LAN

La crescente mobilità degli utenti di un'organizzazione, unita alla necessita di questi ultimi di poter accedere alla propria LAN come se vi fossero fisicamente connessi anche quando sono distanti dalla sede, ha portato allo sviluppo delle VPN host to LAN. Questo tipo di collegamento consiste in un tunnel criptato che, attraverso Internet, connette il client esterno ad un VPN server interno alla LAN. Dentro tale tunnel si instaura un collegamento point to point sulle cui due estremità vengono assegnati indirizzi IP appartenenti all'organizzazione. Così facendo, il client remoto appare interno nei confronti del firewall e pertanto potrà dialogare con gli host della LAN senza il rischio di essere filtrato.

Zeroshell per implementare questo tipo di VPN utilizza il protocollo L2TP/IPSec. L'autenticazione avviene tramite RADIUS in MS-CHAPv2 con gli stessi username e password utilizzati per autenticarsi sui servizi Kerberos 5. La scelta è caduta su questo tipo di VPN poiché per il protocollo L2TP/IPSec esistono client per ogni piattaforma e inoltre la maggior parte dei sistemi Microsoft include già un supporto integrato.

VPN LAN to LAN

La presenza in un'organizzazione di sedi distaccate, unita al costo elevato delle linee di comunicazione dedicate ha portato alla necessità di usare Internet come mezzo per lo scambio di dati. D'altra parte, la rete pubblica, essendo aperta ed insicura, non fornisce garanzie di confidenzialità per i dati che la attraversano. Si è così giunti alla generalizzazione del modello di VPN visto nel paragrafo precedente.

Una VPN lan-to-lan (o site-to-site) è un tunnel crittografato che unisce due LAN (geograficamente distanti) attraverso Internet. Concettualmente si potrebbe pensare alla VPN come ad un cavo virtuale che unisce due LAN: non importa quanti router sia necessario attraversare su Internet, le due LAN appariranno separate da un unico segmento di rete.

I tunnel VPN si possono classificare a seconda che al loro interno siano incapsulati pacchetti di Layer 2 (Data Link) o pacchetti di Layer 3 (Network). Nel primo caso le due LAN sono generalmente in bridge per cui qualsiasi protocollo di livello 3 (IP, IPX, Appletalk) può passarvi. Naturalmente anche il broadcast di livello 2 si propaga tra le due LAN.
Nel secondo tipo di VPN invece, un solo protocollo di Layer 3 puo transitare (generalmente IP) e il traffico viene instradato mediante route statiche. Si deduce pertanto che le due LAN devono appartenere a subnet distinte.

Esistono diversi protocolli standard per costruire VPN. Quello sicuramente più conosciuto per VPN di tipo IP è IPSEC in cui per ogni singolo pacchetto l'header è autenticato dal protocollo AH e il payload criptato dal protocollo ESP. Tuttavia, il fatto di criptare il payload, contenente anche il numero di porta sorgente e destinazione del livello trasporto TCP/UDP, crea problemi ai router intermedi che effettuano NAT. Questi ultimi inoltre, modificando l'IP sorgente dei pacchetti, generano errori di checksum per il protocollo di autenticazione AH. La soluzione, che prende il nome di NAT Traversal (NAT-T), è generalmente di incapsulare IPSEC in datagrammi UDP sulla porta 4500. Un altro problema di IPSEC è che per poter autenticare e criptare i pacchetti è necessaria una struttura di scambio delle chiavi che prende il nome di IKE (Internet Key Exchange). Tale server, che risponde sulla porta UDP 500, in genere supporta autenticazione con preshared key o con certificati X509.

In Zeroshell si è scelto come soluzione alle VPN site-to-site di incapsulare le trame Ethernet in tunnel TLS autenticati mediante certificato X.509 su entrambi gli endpoint. Questa soluzione, non standardizzata, richiede l'utilizzo di un box Zeroshell in entrambe le LAN o comunque di un altro sistema che utilizzi il software Open Source OpenVPN. Questa soluzione è stata scelta perché presenta i seguenti vantaggi:

  • Realizzando tra le due LAN una connessione Ethernet (Layer 2) permette oltre al routing anche il bridging delle reti garantendo il passaggio di qualsiasi protocollo di livello 3 (IP, IPX, Appletalk,ecc);
  • È supportato il protocollo VLAN 802.1Q. Ciò significa che se una rete è divisa in Virtual LAN, queste ultime possono essere trasportate anche sull'altra rete con un unico tunnel VPN;
  • È supportato il bonding di due o più VPN in configurazione load balancing o fault tollerance. Ciò significa per esempio, che se si dispone di due o più connessioni ADSL, si può realizzare una VPN per ogni connessione e unirle insieme aumentando la banda o l'affidabilità
  • Grazie all'algoritmo di compressione real-time LZO, i dati sono compressi in modo adattivo. In altre parole la compressione avviene solo quando i dati sulla VPN sono realmente comprimibili;
  • L'uso di tunnel TLS su porte TCP o UDP permette di attraversare senza problemi router su cui sia abilitato il NAT.



    Copyright (C) 2005-2013 by Fulvio Ricciardi