cloud_computing_ BERGADANO - Camera di commercio di Torino
Transcript
cloud_computing_ BERGADANO - Camera di commercio di Torino
Cloud Computing Prof. Francesco Bergadano Dipartimento di Informatica, Università degli Studi di Torino Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Cloud Computing Prof. Francesco Bergadano Dipartimento di Informatica, Università degli Studi di Torino Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Cloud Computing Definizione di Cloud Computing: Sviluppo ed uso di tecnologie ICT con le seguenti caratteristiche: − vengono fornite risorse (hardware, piattaforme software, servizi applicativi) − le risorse vengono fornite e rese accessibili via Internet − le risorse sono scalabili in modo dinamico e su richiesta (on demand) − le risorse possono essere virtuali − e’ possibile accedere alle risorse attraverso device di diversi tipi Per chiarire dobbiamo: − fare qualche primo esempio − spiegare che cosa intendiamo per virtualizzazione Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Cloud Computing, qualche esempio ... lo stiamo usando tutti: − webmail − google docs − google calendar − servizi vari ai quali il consumatore accede via web: − banking (es. F24, rubrica beneficiari, stock watch) − assicurazioni (es. “le mie polizze”) − shopping / commerce (es. preferiti, carrello, history) − ambienti resi disponibili nei social network − servizi acquistati dalle aziende ed accessibili via Web: − gestionale (aggiornamento sw non necessario, e’ un servizio su Cloud) − client relationship management (CRM) − documentale e workflow, e-collaboration − applicazioni custom (es. Cineca per Unito) Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Virtualizzazione Il concetto di virtualizzazione Virtualizzazione, un concetto ampiamente usato nell’informatica, ad esempio: - file system - memoria virtuale - virtualizzazione dei server Vantaggi della virtualizzazione dei server: - Riduzione del numero di server fisici. Utilizzo effettivo dei server sotto il 20%, è quindi possibile la server consolidation. - Indipendenza dall’hardware o Facilità di porting di applicazioni da una macchina all’altra o Possibilità di mantenere applicazioni legacy su hardware non più supportato o Standardizzazione delle installazioni - Possibilità di creare ambienti di test Svantaggi - Overhead - Sicurezza Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] *Tipi di virtualizzazione ([2], [1] pagg. 13): Aggregation (es. Grid) Partitioning Hardware partitioning: A ogni VM si associa una diversa partizione hardware (es. board, processori, memoria) Esempi: HP nPartition, Sun Dynamic System Domains Hypervision Virtual Machine Monitor Hypervisor hosted OS hosted OS virtualization Diverse copie del SO base e alberi di processi separati (zone) Esempi: Sun Solaris Containers/Zones, FreeBSD Jails, Virtuozzo Instruction-set (emulazione) Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] *Hypervisor Un layer che permette l’astrazione rispetto al livello fisico Permette la condivisione dell’hardware fisico tra diverse macchine virtuali Fornisce a ogni macchina virtuale una diversa visione dell’hardware fisico, emulando le componenti hardware desiderate Vedi [1], pag. 16. Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] *Virtual Machine Monitor Il Virtual Machine Monitor (VMM) è un layer che permette di ○ Fornire alle VM le interfacce hardware desiderate ○ Gestire le VM: comunicazione tra VM isolamento monitoraggio getione priorità ciclo di vita Tipi di Virtual Machine Monitor ([1] pagg. 17) ○ OS hosted Microsoft Hyper-V stand alone Microsoft Virtual Server VMware Server ○ Hypervisor hosted Esempi: Microsoft Hyper-V Xen VMware ESX Server Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Esempio [3]: Virtual Machine Monitors (VMMs) VM0 Virtual Machines (VMs) App0 Guest OS0 VM1 VMn App1 Guest OS1 ... Appn Guest OSn Virtual Machine Monitor (VMM) Platform HW Memory Processor/CS I/O Devices VMM is a layer of system software Enables multiple VMs to share platform hardware Allows Apps to run without modifications Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Definizione di Cloud Computing: Sviluppo ed uso di tecnologie ICT con le seguenti caratteristiche: • vengono fornite risorse (hardware, software, servizi) • le risorse vengono fornite e rese accessibili via Internet • le risorse sono scalabili in modo dinamico • le risorse possono essere virtuali • e’ possibile accedere alle risorse attraverso device di diversi tipi Differenze rispetto a server virtualization: - - “risorse” in generale, non solo server Risorse non solo hardware, ma anche servizi Risorse e servizi forniti “as a service”, quindi o On demand o Con tariffazione anche spot o Senza ownership della risorsa Scalabilità (indipendenza da una specifica infrastruttura fisica) “over the Internet”, quindi o Preferibilmente sopra http o Disponibile a diversi device (pc, smartphone, tablet) o Accessibile ovunque Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Tipi di cloud Classificabili rispetto a: 1. Dove si trovano le risorse del cloud 2. Tipi di servizi Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Classificazione in base a dove si trovano le risorse 1. Public cloud Nel cloud pubblico l’infrastruttura è presso il fornitore di servizio, quindi: - Il cliente non sa dove si trovano le risorse hardware Il cliente non controlla quali risorse fisiche devono essere utilizzate Più clienti condividono le stesse risorse 2. Private cloud Nel cloud privato l’infrastruttura è presso l’utente del servizio, quindi: - L’utente controlla le risorse Le risorse non sono condivise Vi può essere maggiore sicurezza/controllo Esistono due tipi di private cloud: - ospitate internamente ospitate presso un centro servizi, ma in uso esclusivo al cliente 3. Hybrid cloud Uso di applicazioni critiche su cloud privato e di applicazioni più aperte su cloud pubblico. 4. Community cloud Private cloud usato da più unità di una stessa organizzazione, o da più organizzazioni federate, ad esempio nel settore pubblico Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Classificazione in base al tipo di servizio 1. Infrastructure as a service (IaaS): offerta di servizi relative all’hardware come cloud, ad esempio: Database, Spazio disco, Server virtuali Esempi di offerte di tipo Infrastructure as a service: - Amazon EC2 (computing) Amazon S3 (storage) Rackspace Cloud Servers Flexiscale 2. Platform as a Service (PaaS). Esempi di offerte esistenti: - Google’s Application Engine Microsofts Azure 3. Software as a service (SaaS) offerta di servizi software completi su cloud (a disposizione o pay per use). Esempi: - Salesforce.com per Customer Relationship Management (CRM) Google gmail, Microsoft hotmail Google docs e Microsoft BPOS (Business Productivity Online Standard Suite, versione online di office). Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Security - virtualizzazione e i corrispondenti rischi di sicurezza ([1], pag. 33 e seguenti) la sicurezza di una infrastruttura cloud esterna la sicurezza dei servizi software o sicurezza della comunicazione o sicurezza dell’infrastruttura ospitante o http-related o user management o aspetti normativi Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] *La sicurezza della virtualizzazione ([1], pag. 33 e seguenti) Rischi: Malware basato su virtualizzazione Man in the middle su live migration DOS Contromisure: Malware Detection via Virtual Machine Detection Honeypots Cifratura dischi virtuali Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] *Malware basato su virtualizzazione Rootkit “kit” per agire come “root” ovvero come amministratore Un kit che può essere usato da remoto e senza autorizzazione Il rootkit può essere installato all’insaputa dell’utente, anche in modo automatico, da parte di malware esterno, al fine di lasciare aperta una backdoor, da utilizzarsi al momento opportuno. I rootkit possono essere User space (modificano eseguibili come farebbe un comune virus – rilevabili mediante analisi con signature o verificando l’integrità dei file) Kernel space (modificano le system call, non rilevabili mediante ricerca di signature nei file utente) Hypervisor based (hyperjacker – inserisce uno strato di virtualizzazione che contiene le funzionalità del malware, il sistema operativo risulta intatto) – vedi [1] fig. 16 pag. 35. Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] *Tipi di hyperjacker sulla base delle funzionalità del payload/malware Silenzioso (non interagisce con la VM, crea una backdoor o esegue attività nascoste ed esterne, ad esempio spam, website fraudolento, website illegale, DOS) Passivo (intercetta il traffico di rete, gli eventi o i keystroke sulla VM) Attivo (modifica il comportamento della VM, ad esempio cambiando i messaggi in rete o il contenuto dei file) Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] *La sicurezza dei servizi software e di una infrastruttura cloud esterna - - - - - sicurezza della comunicazione (tra risorse del cloud, tra utente e cloud) o intercettazione, modifica o denial of service (DOS) sicurezza dell’infrastruttura ospitante o protezione dei dati o separazione dei dati di diversi clienti o malware on site, malware veicolato all’utente o disponibilità del servizio user management o autenticazione utente IP, IP+coockie/url Credenziali tipo utente/password One time passwords con token Certificati di chiave pubblica / https o autorizzazione rischi http-related o injection (es.: SQL injection, XSS) o phishing e indirizzamento verso cloni modificati del servizio aspetti normativi o responsabilità dell’amministratore di sistema o trattamento dei dati rispetto alla normativa sulla privacy o responsabilità in caso di perdita o furto dei dati del cliente finale Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Aspetti economici: vantaggi/svantaggi nel passaggio a Cloud: VANTAGGI - Risparmio possibile di o spazio o energia elettrica, raffreddamento o costo dell’hardware - Outsourcing degli interventi tecnici o manutenzione hardware e software o personale - Scalabilita’ o Se aumentano le necessita’ non e’ necessario modificare l’infrastruttura interna o Il Cloud e’ “on demand”: pago solo quello che uso, quando lo uso SVANTAGGI - Velocita’ di accesso a dati e applicazioni o Dipende dalla rete pubblica o Se manca il collegamento non posso accedere - Sicurezza o Meno controllabile o In mano al fornitore del servizio - Compliance o Puo’ comportare problemi, le misure adottate dipendono dal fornitore - Dipendenza dal fornitore o Se i prezzi aumentano o Se il fornitore non e’ piu’ in grado di assicurare il servizio Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] CONCLUSIONE Cloud = risorse virtuali via Internet, on demand, accessibili attraverso ogni device Virtualizzazione = server e risorse virtuali, implementati su piattaforme fisiche Tipi di cloud = public/private/hybrid/community – infrastructure/platform/application Issues: performance/sicurezza, flessibilità/scalabilità/outsourcing, compliance, economics Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected] Bibliografia [1] La virtualizzazione e i suoi aspetti di sicurezza. Assosecurity 2011. [2] Phelps J.R. and Dawson P.: Demystifying server virtualization taxonomy and terminology. Gartner Research, 2007 [3] Narendar B. Sahgal and Dion Rodgers. Understanding Intel Virtualization Technology (VT). http://download.microsoft.com/download/9/8/f/98f3fe47dfc3-4e74-92a3-088782200fe7/twar05015_winhec05.ppt [4] Oberheide, Cooke, Jahanian. Empirical Exploitation of Live Virtual Machine Migration. March 2008. http://jon.oberheide.org/files/blackhat08migration.pdf Cloud Computing – Prof. Francesco Bergadano – Dipartimento di Informatica, Università di Torino – [email protected]