Soluzioni VPN per Road Warriors Alessandro Brunengo per il gruppo VPN del Netgroup Il lavoro e' stato svolto dal sottogruppo VPN del netgroup, costituito da: – A. Brunengo – E. M. V. Fasanelli – E. Mazzoni – O. Pinazza – C. Soprano – R. Veraldi – S. Zani Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Cosa significa VPN Virtual Private Network: un concetto che può essere implementato con l’utlizzo di tecnologie diverse fra loro. Alla base vi è la necessità di avere una rete virtuale di calcolatori che possono fare parte fisicamente di reti diverse ma appartenere alla stessa rete logica (VPN). L’utilizzo di meccanismi di autenticazione e crittografia rende questa rete privata. La VPN va oltre il concetto di LAN e WAN e le può utilizzare entrambe come mezzo di cui servirsi per raggiugere tutti i suoi nodi. Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Tecnologie di VPN • PPTP – L2TP (Microsoft VPN) - Windows, UNIX/Linux clients. • CIPE - Linux clients e Windows (2000 & NT) clients • OpenVPN - UNIX/Linux clients • SSL - wrapped PPP - Linux clients • IPSec, tunnel mode, transport mode - Windows (2000 & NT) e UNIX/Linux clients • PPTP/IPSec - Windows (2000 & NT) e UNIX/Linux clients • L2TP/IPSec - Windows (2000 & NT) e UNIX/Linux clients Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Cosa serve al guerriero? • accesso ai volumi esportati via NFS • accesso ai volumi Windows • accesso al mail relay di sezione • ... in generale un bypass del firewall, cioè un accesso via WAN ai servizi informatici della sezione come se fosse connesso alla sua LAN un accesso tramite VPN Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Cosa deve offrire la soluzione? Sicurezza • Comunicazione criptata • Autenticazione per l'accesso alla VPN Interoperabilità • Client Windows, Linux, MacOsX (?) • Server ? Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Cosa deve offrire la soluzione? Applicabilità • Accesso attraverso NAT o firewall Semplicità • Configurazione del servizio • Configurazione del client • Utilizzo del client Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Test di soluzioni a costo zero • • • • Free S/WAN Cipe KAME Microsoft VPN connection Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Free S/WAN • Implementazione di IPSec public domain per linux (http://www.freeswan.org) • Autenticazione e criptazione tramite chiavi prefissate, o tramite IKE (via certificati, preshared secrets o RSA private keys) • Compatibile con il protocollo IPSec di altre architetture Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Free S/WAN (II) • Effettuati test linux-linux e linux-W2K (utilizzando IKE via RSA private keys) • Verificata la funzionalita' della connessione • Complessita' della configurazione (in particolare IPSec su W2K) Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo CIPE • Implementazione VPN su linux (sostanzialmente un tunnel UDP) • Disponibile anche un client per WNT e W2K • Configurazione non particolarmente complessa • Problemi di funzionamento del client per W2K Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo KAME • Implementazione di IPSec su FreeBSD e NetBSD (http://www.kame.org) • Caratteristiche simili a Free S/WAN • Effettuata prova di interoperabilità con WXP con utilizzo di certificati • Complessa la configurazione del sistema • Riscontrati problemi sul funzionamento di WXP come server Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Microsoft VPN - PPTP • Dispone di meccanismi di autenticazione opzionali via PAP e CHAP senza criptazione, o MS-CHAP(v2) con criptazione, sullo userDB del server • Esiste client per linux (testato) • Configurazione banale del server e del client Windows; piú complessa la configurazione del client linux Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Microsoft VPN – PPTP (II) • Debolezza nota della criptazione del protocollo PPTP • Verificati problemi di filtraggio del protocollo da parte di alcuni provider nazionali Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Test su VPN box • Cisco VPN concentrator 3000 series • Netscreen 25 Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Cisco VPN concentrator 3000 modelli disponibili: • modello 3005: 100 connessioni, 4 Mb/s, software encryption, 32 MB RAM • modello 3015: idem, 64 MB RAM, upgradable ai modelli successivi • modello 3030: 1500 connessioni, 50 Mb/s, hardware encr., 128 MB RAM • modello 3060: 5000 connessioni, 100 Mb/s, hw encr., 256 MB RAM • modello 3080: 10000 connessioni, 100 Mb/s, hw encr., 256 MB RAM Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Cisco VPN concentrator 3005 principali funzionalità: • Capacità di stabilire VPN LAN-to-LAN e Client-to-LAN. • Protocolli supportati: PPTP, L2TP/IPSEC, IPSEC, IPSEC/TCP ed IPSEC/UDP, ampia configurabilità dei meccanismi di criptazione e delle regole di tunnelling. • Autenticazione tramite database locale, Radius, NTDomain (e W2K-Domain con AD), tramite certificati. • Management via seriale, http, https, ssh, telnet, etc. • Client (IPSEC) per W*, Linux, MacOsX, SunOS • Possiblilità di definire filtri sulle interfacce ethernet Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Cisco VPN concentrator 3005 layout di test: Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Cisco VPN concentrator 3005 prove di throughput: • E’ stato effettuato un test di throughput utilizzando client linux connessi attraverso un link a 10 Mb/s • Throughput con un client: 3.4 Mb/s • Throughput con due client: 2*1.69 Mb/s • In entrambi i casi l’utilizzo della CPU del VPN server va al 100% Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Cisco VPN concentrator 3005 sommario: sicurezza: varie opzioni sul protocollo da utilizzare e sui meccanismi di criptazione e di autenticazione interoperabilità: PPTP testato con client windows e linux client proprietario disponibile per piattaforme W*, linux, solaris, MacOsX Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Cisco VPN concentrator 3005 sommario (II): applicabilità: disponibile il protocollo NAT-T per l'incapsulamento su TCP ed UDP flessibilità nella scelta delle porte per l'incapsulamento semplicità: server configurabile tramite interfaccia Web senza grossi problemi client configurabile in modo banale su tutte le piattaforme testate (W*, linux, MacOsX) Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Cisco VPN concentrator 3005 problemi: • PPTP: fallisce l'autenticazione con DB non locali se si richiede la criptazione (ma la documentazione dice che funzona) • Certificati: non è stato possibile fare test con questo meccanismo di autenticazione (da provare) • Layout: non è supportata (ed è sconsigliata) la configurazione con le due interfacce sulla stessa rete IP Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Netscreen 25 • Capacità di stabilire VPN LAN-to-LAN e Client-to-LAN • Performance dichiarate: fino a 20 Mb/s per VPN con encription, 25 connessioni siteto-site e 100 connessioni tipo client contemporanee Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Netscreen 25 (II) • Effettuate prove con IPSec utilizzando il client proprietario (a pagamento) • Testata autenticazione tramite user Db locale, e tramite Radius server • Non si e' riusciti ad utilizzare un client non proprietario (ma i produttori sostengono che si possa) Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Netscreen 25 (III) • Il prodotto nasce come firewall box, ma sa fare anche VPN server • Non sono state effettuate prove di performance sul throughput • Il client e' a pagamento, e solo per piattaforma Windows Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Test effettuati: tabella comparativa Windows 2000 Server FreeS/WAN (Linux RH) CIPE KAME (FreeBSD) Cisco 3005 Netscreen Tunnel UDP IPSec PPTP, IPSec, L2TP/IPsec, IPsec/tcp/udp IPSec Certificati o preshared key Preshared keys Certificati o preshared key Datab. locale, radius, AD o domain, NIS, AFS, certs… DB locale, Radius server Banale Non semplice Semplice Non semplice Semplice Semplice Client o sistemi compatibili Windows xx ~ tutti i sistemi IPSec Linux e W2K ~ tutti i sistemi IPSec client Wxx, linux, MacOS, SunOS Client Windows xx Performance 5000 conn a 15 Kbs, aggr. 6070 Mbs Non testate ?? Non testate 4 Mbs, 100 conn. simult Costo Licenza server free free free ~4000 Euro Protocolli supportati PPTP, L2TP IPSec IPSec Autenticazione Certificati, Windows domain Semplicità di utilizzo Paestum - 10 giugno 2003 Workshop sul Calcolo INFN ?~ Cisco Alessandro Brunengo Considerazioni • Il box Cisco mostra grande versatilità nella scelta dei protocolli di cripting e nei meccanismi di autenticazione, semplicità di installazione del client e di attivazione della VPN • Il box Netscreen e' inferiore come flessibilita', sulla carta superiore in performance • Altre soluzioni di semplice configurazione sono disponibili, in particolare per soluzioni su piattaforma omogenea (PPTP per Windows, CIPE o Free S/WAN per linux) Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo Riferimenti Tutti i dettagli ed i risultati dei test, ed informazioni sulle attività del gruppo, sono reperibili sul sito del netgroup, alla URL: http://www.infn.it/netgroup nella sezione dedicata al sottogruppo VPN. Paestum - 10 giugno 2003 Workshop sul Calcolo INFN Alessandro Brunengo