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]