Professional Documents
Culture Documents
Virtuelizacija
Šta je virtuelizacija?
Virtuelizacija jeste izloacija kompjuterskih resursa.
Slika 2. 1 Slika 2. 2
Slika 2.1 predstavlja klasični monolitni integrisani informacijskih sistem unutar jednog računara
(mreža, skladištenje, operativni sistem, sučelje i aplikacije - sve je povezano). Ukoliko uklonimo jednu
komponentu taj sistem neće raditi
Slika 2.2. predstavlja svaku stavku sistema "odvojeno". Poenta jeste da se fizička mašina razdvoji,
virtuelizira na slojeve gdje svaki sloj "postaje" virtuelan i može ubaciti, uključiti po želji bez da to utiče
na ostale stavke sistema.
Troškovi IT-a
Jedna od osnovnih stvari zašto je došlo ne do pojave virtuelizacije nego do masovne upotrebne
virtuelizacije jesu troškovi.
Slika 2.1
Crvene strelice predstavljaju nuspojave (ono što ne bi trebalo toliko da se dešava) a zelene strelice
ono što bi trebalo da se očekuje od IT-a. Poenta je da IT ne postoji sam za sebe. IT je podrška
poslovanju, ekonomiji, edukaciji, medicini, svemu onome što nam danas može pasti na pamet. IT nije
sam sebi svrha nego postoji da bi bio potpora ostalim granama ljudskih zanimanja.
U toj cijeloj priči dolazi do nuspojava kao npr. da se tehnologija često mijenja, pojavaljaju se razni
sigurnosni problemi, troškovi rastu...
Slika 2.3 se može primjeniti manje više na svaki IT budžet jedne kompanije.
70% cijelog budžeta jedne firme koji se na godišnjoj bazi uloži u IT jeste maintence (održavanje) tj.
samo da IT radi a 30% od tih ulaganja ješte nešto novo, pobošljanje servisa, sigrunost, smanjenje
troškova.
Tipovi virtuelizacije
Aplikacijska
Desktop/Sesija (gubi na izmaku)
Virtuelizacija mašine (najpoznatije na tržištu)
Aplikacijska virtuelizacija
Primjer: Imamo hardware, imamo operativni sistem i imamo svoj lokalni desktop a aplikacija je
"virtuelna".
Slika 2.2
Desktop/sesija
Primjer: Imamo hardware i imamo operativni sistem. Klijenti zahtjevaju da njihove desktop sesije
(izgleda njihovog desktop-a, njihove aplikacije, njihov My Documents) se nalaze na nekom centralnom
okruženju i sa koje god lokacije u korporaciji se oni logiraju imaju taj pristup. To se još naziva i Roaming
Profiles.
Primjer: Logiramo se iz učionice br. 7 i automatski dobijemo svoj profile (sve svoje podatke koje sam
imao u učionici br. 2, Sarajevu, Mostaru itd.). To se naziva virtuelizacija desktopa.
Software-i koji omogućavaju ovaj tip virtuelizacije su Citrix, Metaframe, Terminal Services
(Microsoft). Ovaj tip virtuelizacije se sve manje koristi zbog toga što koristi jako mnogo mrežnih
resursa na velikom broju klijenata.
Virtuelizacija mašine
Virtuelizacija mašine je tip virtuelizacije kada mi unutar nekog virtuelizacijskog software-a kao što je
HyperVi, VMWare, VirtualBox instaliramo kompletan novi operativni sistem odnosno instaliramo ga
na postojećem hardware-u i postojećem host operativnom sistemu.
Primjer: Imamo hardware i imamo instaliran Windows 8.1 i mi unutar Windows-a 8.1 i unutar software-
a za vritualizaciju instaliramo dodatne operativne sisteme.
Slika 2.3
Na postojećem hardware-u postoji jedan sloj koji se zove hypervisor. Hypervisor je nešto što radi na
jako niskom nivou odnosno možemo reći da se nalazi na skoro istom nivou kao i kernel (srž)
operativnog sistema. Na hypervisor dolazi "glavna" virtuelna mašina (Parent VM) koja ima svoje
virtuelne driver-e. Virtuelni driver iz glavne mašine se preko hypervisor sloja se povezuje sa stvarnim
driver-ima koji "komuniciraju" sa stvarnim hardware-om.
Primjer: Imamo nVidia grafičku karticu. Hypervisor apstraktuje funkcije koje su potrebne da se ta
kartica proslijedi u gornje slojeve i onda se u toj virtuelnoj mašini konfiguriše driver da bi obezbjedio
grafički interface za tu virtuelnu mašinu. Virtuelni stack je memorija koja se odvoji za sve ostale
virtuelne mašine. , hardware -> hypervisor -> parent VM i onda instaliramo po potrebi child VM.
Slika 2.6
Primjer sa Hyper-V
Šta je potrebno da bi jedna virtuelna
Child VM mašina radila?
Parent VM
Hypervisor
Hardware
Slika 2.4
Potreban nam je Binary files dio (exe, dll file-ovi koji dođu uz Hyper-V). Bez Hyper-V neće raditi
mašina na našem računari.
Nakon što instaliramo mašinu ona se sastoji od virtuelnog Hard Disk-a (VHD odnosno VHDX
ekstenzije). To je običan file na disku koji alocira prostor koliko mi odredimo i onda mašina u svoj
config.xml file upiše podatke koje smo mi konfigurisali gdje smo rekli da mi našoj virtuelnoj mašini
dodjeljujemo 2GB RAM-a od naših 8GB, virtuelnom disku dodjeljujemo 100GB HDD-a, mrežnu karticu,
interface itd.
Snapshot čuva kada mi u toku rada snimimo stanje gdje smo stali ("zaledi") i ugasimo virtuelnu
mašinu i kada mi želimo da nastavimo virtuelna mašina nam prikaže gdje smo stali.
Slika 2.5
Slika 2.8. prikazuje omjer fizičkih i virtuelnih server od 2004 do 2009. Do 2005 virtuelni serveri skoro
pa i da nisu postojali ali nakon 2005 ta priča rapidno raste. Godine 2008 dolazi do vrtoglavog rasta
krivulje virtuelnih mašina i 2009 je to postalo mainstream.
Primjena virtuelizacije
Virtuelizacija se može primjeniti u raznim granama IT-a:
Konsolidacija
Ušteda
Iskoristivost
Skalabilnost
Testiranje
Razvoj
Disaster Recovery
Cloud
...
Konsolidacija
Primjer: Imamo 4 mašine: Database server, Mail server, Web server, FTP server. Od tih svih servera na
jedan od njih stavimo Hyper-Vi da bi ga testirali tj. mogućnost da instaliramo virtuelne mašine.
Virtuelne mašine još nisu tu, samo service koji to omogućava. Ta naša mašina ima neku količinu rama.
Mi nekom analizom utvrdimo da naš Database server nikada nije uzeo više od 3GB RAM-a, Mail server
koristi 5GB RAM-a od 8... Analizom smo utvrdili da je otprilike jedna četvrtina memorije svih servera
iskorištena. Poenta je da se iz tih mašina izdvoji i RAM i diskovi u jednu "veću" mašinu, stavimo
virtuelizaciju, instaliramo 4 virtuelne mašine i migriramo Database server unutra, Mail server unutra,
Web server unutra, FTP server unutra. Nakon toga, slobodno možemo da ugasimo ta 4 servera, uštedimo
minimalno 500W struje, uštedimo troškove održavanja, licenci itd.
3. Cloud Computing
Šta je Cloud?
Cloud kao koncept nije novi termin. Cloud je manje više postojao u nečemu sličnom prije 30 i više
godina u starom mainframe okruženju. Postojao je terminal, ekran i keyboard, zatim mainframe koji je
bio u istoj sobi, istoj zgradi, drugom gradu itd. i postojala je mreža.
Inputi korisnika, komande su obrađivane na strani mainframe-a i mainframe je vraćao output klijentu
na njegov ekran. Pohrana nije bila na klijentu nego na mainframe-u i ono što je klijent tražio se u
obliku podataka vraćalo njemu. Dakle, obrada i pohrana se nalazila na mainframe-u a ne na klijentu.
Cloud je manje više ista priča. Dakle, opet se stvari čuvaju negdje drugo, obrađuju se podaci negdje
drugo... Ako gledamo sa moderne perspektive uočit ćemo da cloud omogućava totalno drugi pristup
computing-u gdje se na zahtjev klijenta potrebe mogu skalirati (ako mi treba ove godine 100 servera
zakupim 100 servera, a ako mi sutra treba samo 5 zakupim 5. Plaćamo onoliko koliko nam treba).
Cloud Computing
Software as a Service je ono što mi danas koristimo najviše i ono gdje naša percepcija cloud-a počinje
a možda i završava. (OneDrive, Dropbox...). Recimo office365. Njima se pristupa preko web browsera.
Infrastructure as a Service nam omogućava da pored software-a kojeg nam neka firma daje, i pored
mojih aplikacija koje pokrenem u cloud-u zakupim kompletnu infrastrukturu. Mogu da zakupim
virtuelne mašine ili čak stvarne fizičke mašine.
Virtual Machines
Šta je bolje – šta je gore, windows – linux, ta priča više nije aktuelna! Sada se priča seli u cloud i interes
je i da Microsoft i Amazon i Oracle i Google itd. imaju što više korisnika, zašto? Novac. Njih nije briga
da li imate windows ili linux, danas imate opciju da unutar infrastrukture koja vam se daje kao servis
stavite bilo koji sistem koji vam padne na pamet.
Šta znači da su mašine portabilne? Ja imam svoj neki centar gdje se nalaze moje fizičke ili moje virtuelne
mašine (na slici recimo recimo da su pravougaonici serveri, a romboidi - virtualci) i gore imamo
Windows Azure. Ja sada mogu reći daj mi uploaduj ovog virtualca u cloud (bukvalno: browse- nađi
mašinu - upload) i sada se ta mašina starta u tom okruženju, nije više kod mene nego je gore. Isto tako,
može i obrnuto, znači želim neku mašinu povući odozgo u svoj centar, nije problem.
WM persistent drive
S aspekta clouda jako je važno da podaci budu perzistentni (trajni, osigurani od uništenja). Mene nije
briga hoće li se pokvariti disk u cloudu, ja to plaćam i hoću da radi, ako je to kod mene ja moram da se
brinem da li moj disk radi, da li ima neku backup proceduru. Naša mašina se recimo nalazi na 3 diska
(3 kopije na 3 različite lokacije) i ako se jedan od tih diskova pokvari, drugi disk automatski uzima
posao sa njega. Geo replikacija – svaki data centar ima mirror site u drugom data centru.
Web Sites
Danas možemo da razvijamo web sajtove u onoj opciji Platform as a service i da uploadamo u naš
cloud provajder bez obzira je li to asp.net, php nije važno, sa druge strane je infrastruktura koja
omogućava da bilo šta radi. Web sajt može raditi u dva moda: u share modu i modu koji je samo
rezervisan za nas. Share mode znači da se naš sajt nalazi na jednom ili dva fizička servera u nekim
virtuelnim okruženjima i on tamo radi. Međutim on tamo radi sa još 10, 20 drugih sajtova i dijele
resurse.
Mobile Services
Također spadaju u onu priču o infrastrukturi i platformi. Recimo napravimo neki web servis koji
uzima neke podatke o finansijama, koji se podigne u cloud, i kad neko skine tu aplikaciju on pristupa
servisu u cloudu kako bi njegova aplikacija radila.
SQL Database
Postoji opcija da u cloudu instaliramo bazu na bilo koji način (kao instanca, kao mašina, kao cluster...).
Blob Storage
Iznajmljeni veliki disk na kojeg pohranjujemo ogromnu količinu file-ova.
4. Sigurnost i/ili privatnost u IT-u, Kriptografija
Sigurnost je proces, a ne krajnje stranje.
Maliciozno ponašanje
Prevare/krađe (niz koraka koje korisnik uradi i time kompromituje sebe ili njihov sistem u
cilju da napadač pristupi podacima);
Špijunaže;
Sabotaže;
Spam (korisnici se zatrpavaju velikom količinom mailova gdje se jednim klikom kompromituje
korisnik);
Ilegalne aktivnosti;
Vandalizam (uništavanje podataka, padanje servera);
Elektronski rat (danas jako popularan);
...
Sigurnosni inžinjering
Bavi se izradom sistema koji su otporni na maliciozna ponašanja, greške, namjene i/ili slučajne
faktore koji se mogu javiti u svakodnevnom radu. Za postizanje željenog cilja sigurnosni inžinjering
koristi se sa: alatima, procesima i metada koji vode krajnjem rezultatu te se više fokusiraju na
namjerne nego na slučajne aktivnosti.
pravila (postoje osnovna pravila a pored njih postoje i pravila koja se izvuku iz faze analize i
dizajna)
motivisanost (spriječavanje malverzacije, krađe, uništenje informacija je dovoljan motiv da se
uključe elementi sigurnosti)
mehanizmi (način, alati, procesi metode koje ćemo primjeniti kad imamo pravila i motiv)
uvjerenost (uvjerenost da naš sistem radi odnosno da je dodatno istestiran, kada završimo
sistem potrebno je testirati u stvarnim uslovima da utvrdimo do koje granice je siguran)
Gdje je bitna informacijska sigurnost? Pa u poslovnim okruženjima (firme, banke, etc), medicinskim
institucijama (u kojim je jako bitan integritet informacija koje sadrži institucija o svojim pacijentima),
vojska etc.
Availability (dostupnost): podaci trebaju biti dostupni kada su potrebni korisniku; Ovo je jedna od
novih sigurnosnih elemenata.
Integritet i dostupnost
Rollback: da je sistem uvijek spreman da se vrati na prijašnje stanje u slučaju problema
(objašnjeno u primjeru sa bankomatom);
Autentičnost: da onaj ko unosi informacije ima zagarantovan zapis da je to zapravo osoba za
koju tvrdi da jest;
Audit: praćenje aktivnosti korisnika;
Detekcija uljeza: detekcija i izoliranje uljeza;
Povjerljivost
Data protection: zaštita podataka korištenjem kriptografskim alatima;
Anonimnost: jasno značenje, ali jako teško izvodivo danas;
Unlinkability: da ne postoji nikakva informacija koja se veže za nekog korisnika (primjer:
voting, da se ne zna koji je korisnik za koga glasao – anonimnost spada ovdje);
Pseudonimity: predstavljanje kao neko drugi;
Unobservability: potpuno isključuje korisnika iz svih aktivnosti;
Principi privatnosti
Privatnost je pravo svake individude da kontroliše svoje lične podatke.
Neki od principa:
Kriptografija
Kriptologija je naučna disciplina kreiranja i probijanja „tajnih kodova“. Sastoji se iz dva osnovna dijela:
Šifra (cipher) ili kriptosistem se koristi za enkriptovanje otvorenog teksta (plain text). Rezultat
šifrovanja je šifrovani tekst (ciphertext). Dekriptovanjem šifrovanog teksta se ponovo dobija otvoreni
tekst. Ključ (key) se koristi za konfigurisanje kriptosistema.
Kriptosistem simetričnog ključa (symmetric key) koristi isti ključ za enkriptovanje/dekriptovanje.
Kriptosistem javnog ključa (public key) koristi isti za enkriptovanje a privatni ključ za dekriptovanje.
Kripto principi:
1. Sistem je potpuno poznat napadaču
2. Samo je ključ tajan
3. Kriptoalgoritam nije tajan
Ovo je poznato još i kao Kerckhoff-ov princip. U kriptovanju teksta pominje se termin „Cezarova šifra“
koja predstavlja pomjeranje za 3 mjesta u kriptovanju teksta. Tvorci kriptoanalize su Arapi (Al-Kindi).
Simetrična je imala isti ključ za šifrovanje i dešifrovanje podataka. Poznati algoritmi koji su se
koristili u simetričnoj kriptografiji su:
DES 56 bita
Triple DES 112 bita
AAES (Rijndael algoritam)
Bit je predstavljao snagu ključa. Što veći bit to je teže bilo probiti ključ. Dužina ključa: 128, 192 ili 256
bita. Najveći problem enkripcije je bila razmjena ključa.
RSA (najpoznatiji algoritam kriptografije javnim ključem, ime dobila prema pronalazačima:
Rivest, Shamir, Adleman)
PGP (softversko rješenje za ključ)
GNU Privacy Guard (GnuPG) (softversko rješenje)
Primjena enkripcije:
Mail
Šifrovanje fajlova
Enkripcija diskova itd.
5. Računarski kriminal i digitalna forenzika
Računarski kriminal – aktivnost u kojoj je računar resurs, servis, alat ili mjesto počinjenog krivičnog
djela. Ciljevi računarskog kriminala su:
Ilegalni pristup
Ilegalno presretanje (presretanje mrežnih paketa)
Interferencija unutar podataka (neovlašteno brisanje, korigovanje i izmjena podataka)
Sistemska interferencija (neovlašteno upravljanje sa sistemskim f-jama)
Elektronske prevare i sl.
Digitalna forenzika
Je dio procesa istrage koji obuhvata naučnu analizu medija/uređaja za pohranu podataka i/ili uređaja
za obradu podataka sa ciljem utvrđivanja ilegalne aktivnosti koja je dovela do kaznenog djela.
Proces istrage:
Pronalaženje -> Zapljenjivanje -> Prezervacija -> Pregled -> Analiza -> Izvještavanje -> Prezentovanje
-> Stručni svjedok -> Činjenice -> Presuda
Kontrola pristupa
Jedini način za validno i kvalitetno prikupljanje digitalnih dokaza jeste postojanje kontrole pristupa u
sistemu.
Razlikujemo:
Ako neki od ova tri cilja izostaje veoma teško je riješiti slučaj.
Sve ovo s ciljem zaštite prikupljenih podataka od falsifikovanja, brisanja ili izmjena.
Ne! Jer postoje osobe koje imaju autorizaciju da imaju pristup tim podacima, sad je već riječ o
moralnosti te osobe i koliko će to zloupotrijebljavati ali čak i da zloupotrijebi obruč se sužava u
kasnijoj forenzici cijelog slučaja na jednu ili dvije osobe jer su jedine one imali pristup tom niskom
nivou podataka.
Antitampering metoda
Etika u pravu, etika u poslovanju, etika u edukaciji je tu već duži niz godina i postoje pravila, postoje
zakoni, postoje standardi i tu ako se stvari naruše prilično je jasno definisano koje su nuspojave
odnosno koje su posljedice ako nešto neko ne upotrijebi na pravi način. Etika u IT-u je veoma mlada i
još uvijek stvari nisu kristalno jasne. Još uvijek nije definisano šta se to smije a šta se to ne smije.
Danas postoje mnoge etičko sporne situacije gdje stvari nikako nisu završene dobro po korisnike IT-a
gdje su davaoci servisa nekada i namjerno zloupotrijebili informacije bez znanja korisnika i time im
nanijeli štetu koja ne mora biti materijalna.
Šta je etika?
Generalno, etika je neki racionlani proces ili procesi unutar određenih principa.
Primjer: Ako imamo jednu sobu u kojem se dešavaju neke stvari i to je OK. Ako izađemo iz te sobe onda
ulazimo u sivu zonu u kojoj stvari su fluidne, nedefinisani i one mogu krenuti po zlu.
Nezavisna (Etika ne smije da zavisi od pojedinca. Stvar treba da bude definisana standardima.
Niko ne smije da utiče na etički proces.)
Objektivna (Da stvari koje su takve budu kao takve, ne smije postojati opcija da se stvari
prikažu drugačije neko što jesu.)
Poštena (Postavke sistema treba da budu iste za cijelu skupinu korisnika koje spadaju u jednu
kategoriju.)
Nedjeljiva (Pojedine stvari iz etike se ne mogu razdvojiti. Ako se jedna stvar izvuče remeti se
kompletan proces.)
Integrisana = Nedjeljiva
Shvatljiva (Ako pogledamo uslove korištenja nekog software-a (licence agreement) najsitnije
stvari su najbitnije stvari. I te stvari su obično napisane jako komplikovanim jezikom i tu se
nalaze skrivene etičke i moralne forme koje vlasniku sistema daje privilegije da sa vašim
informacijama radi što god želi a mi mu to dozvoljavamo sa jednim Yes ili jednim I agree.)
Povjerljiva (Etika poštuje pravo pojedinca na povjerljivost.)
Moralna (Da štiti korisnikov moral.)
Odgovorna (Da postoje posljedice ako se naruše etički principi, da se zna kojim putem da se
kreni kako bi se šteta eliminisala ili ublažila.)
Šta je etika u IT-u ili cyberetika?
Cyberetika je studija moralnih, pravnih i etičkih pitanja koja se odnose na korištenje informacijskih i
komunikacijskih tehnologija.
To znači da ako neko ima mogućnost (IT osoblje) da nanese štetu korisnicima, da zloupotrijebi naše
informacije ali to neće uraditi jer ga koče etički principi.
Privatnosti pojedinaca
Tačnosti informacija
Vlasništva nad podacima
Dostupnosti informacija trećim licima
U bilo kojem segmentu ako se etika naruši ja sam narušio privatnost svog klijenta, lažirao informacije,
varao, dao neovlašteno kopiranje itd. Zbog toga je etika u IT-u vrlo važna.
Etički scenario
Vi ste cijelo informatičko odjeljenje male tvrtke sa 20 zaposlenih. Direktor kompanije vjeruje da neki
od zaposlenika troše previše vremena na internetu. Od vas se traži da počnete pratiti korištenje
interneta zaposlenika u radnom vremenu, bez njihova znanja.
a. Tačno je sa aspekta direktora. - Nismo pogriješili ali smo narušili etički kodeks ponašanja.
b. Tačno je sa aspekta etike i morala. - Uradili smo jedinu logičnu stvar. Skinuli smo sa sebe
odgovornost. Prvo da definišemo pravila šta se smije a šta ne smije ako nisu definisana. Ako su
definisana onda je a. potpuno ispravno i mi smo "čisti".
c. Tačno je sa aspekta nas.
Posljedice
Posljedice narušavanja etičkih i moralnih principa:
Gubitak posla
Zatvor
Gubitak reputacije i ugleda
...