Dunakavics A Dunaújvárosi Főiskola online folyóirata 2013. I. évfolyam IV. szám Műszaki-, Informatikai és Társadalomtudományok
VASS CSABA A közléstípusok igazságkapacitásai DUKÁN P. — KŐVÁRI A. Felhő alapú számítástechnika SZLIVKA FEERENC Bűvös doktaéder, mint gépészeti szerkezet
Dunakavics A Dunaújvárosi Főiskola online folyóirata 2013. I. évfolyam IV. szám Műszaki-, Informatikai és Társadalomtudományok MEGJELELENIK ÉVENTE 12 ALKALOMMAL SZERKESZTŐBIZOTTSÁG András István, Kiss Natália, Rajcsányi-Molnár Mónika, Talata István, Kukorelli Katalin SZERKESZTŐSÉG Ladányi Gábor (Műszaki) Nagy Bálint (Informatika és matematika) Szakács István (Gazdaság és társadalom) Klucsik Gábor (technikai szerkesztő)
TARTALOMJEGYZÉK Előszó a Gazdaság és társadalom rovat olvasói számára ........................................................................... 4 Absztrakt/Abstract: Vass Csaba: A közléstípusok igazságkapacitásai ..................................................... 5 Előszó az Informatika és matematika rovat olvasói számára...................................................................... 8 Absztrakt/Abstract: Dukán Péter—Kővári Attila: Felhő alapú számítástechnika .................................. 9 Előszó a Műszaki rovat olvasói számára ...................................................................................................... 10 Absztrakt/Abstract: Szlivka Ferenc: Bűvös doktaéder, mint gépészeti szerkezet................................. 11 Vass Csaba: A közléstípusok igazságkapacitásai ........................................................................................ 13 Dukán Péter—Kővári Attila: Felhő alapú számítástechnika ..................................................................... 25 Szlivka Ferenc: Bűvös doktaéder, mint gépészeti szerkezet ..................................................................... 33
Felelős szerkesztő Németh István
Szerzőink rövid bemutatkozása .................................................................................................43 Introduction of authors .............................................................................................................45
Szerkesztőség és a kiadó címe 2400 Dunaújváros, Táncsics M. u. 1/a.
Galéria ...................................................................................................................................47
Kiadja DUF Press, a Dunaújvárosi Főiskola kiadója Felelős kiadó András István, rektor A lap megjelenését támogatta TÁMOP-4.2.3-12/1/KONV-2012-0051 „Tudományos eredmények elismerése és disszeminációja a Dunaújvárosi Főiskolán”. http://dunakavics.duf.hu ISSN 2064-5007
Dunakavics —
2013 / 4.
3
Informatika Matematika
DUKÁN PÉTER, KŐVÁRI ATTILA
Felhő alapú számítástechnika Virtualizációs metodológák biztonsága A felhő alapú számítástechnika az informatikai erőforrások (szerverek, hálózati eszközök, alkalmazások) olyasfajta használati módját teszi lehetővé, amely során az erőforrások allokációja és szeparációja egy központi menedzsmentfelület által biztosított. Így az informatikai cégek és részlegek számára egyszerűbbé válik az informatikai rendszerek szolgáltatásorientált kialakítása, amit a következő öt jellemzővel lehet leírni (Mell–Grance , 2011): Igény szerinti szolgáltatás: Az ügyfelek a folyamatosan változó kapacitásigények függvényében automatikusan változtatni tudják az igénybevett szolgáltatás paramétereit (számítási- és tárolási kapacitás) anélkül, hogy külön a technikai személyzet részéről beavatkozás lenne szükséges. Szélessávú hálózati hozzáférés: A szolgáltatások a számítógépes hálózaton keresztül érhetőek el, ezért fontos tényezője a sávszélesség. Erőforrások átcsoportosíthatósága: A valós fizikai erőforrásokból külön csoportokat lehet képezni, amelyek fölött aztán szabadon rendelkezhetnek az ügyfelek. Ez jellemzően a több fizikai helyszínnel rendelkező felhők esetében hasznos, ahol a szolgáltatásokat biztosító erőforrásokat az ügyfelektől kevesebb fizikai távolságra lévő infrastruktúrán jelöljük ki. Rugalmasság: Az ügyfelek szinte azonnali változtatást tudnak tenni az erőforrásigényeikben, így az üzleti modelljükhöz könnyen illeszkedő infrastruktúrát tudnak szinte minden időpillanatban használatba venni. Mérhető szolgáltatás: A szolgáltatók számára automatikusan történik az igénybevett szolgáltatások mennyiségének mérése. A mérések függvényében könnyen tudják tervezni vagy átcsoportosítani az infrastruktúrájukat. Továbbá a számlázás is kisebb egységekre bontható az ügyfelek számára.
Dunakavics
- 2013 / 4.
25
Dukán Péter, Kővári Attila
Felhő alapú számítástechnika Virtualizációs metodológák biztonsága
A privát felhők a vállalat saját tulajdonát alkotó hardverelemekből épülnek fel, azaz az egyes szerverek (felhős terminológiával: csomópontok, avagy angolul node-ok) és az őket összekötő hálózati eszközök a vállalat tulajdonát képezik, valamint a menedzselését is a vállalt rendszermérnökei végzik. A közösségi felhők egyes csomópontjait a közösség tagjai biztosítják. Itt egy közös érdek következtében, bizonyos szabályzat betartásával csatlakoznak az érdeklődők a közösséghez, és ezután hozzáférést biztosítanak hardveres erőforrásaikhoz. A publikus felhőrendszerek szolgáltatásokat nyújtanak. A szolgáltatások üzemeltetését a felhőt (és infrastruktúráját) üzemeltető vállalat végzi, így az ügyfelek a szolgáltatás típusának függvényében rendelkeznek az erőforrások fölött. (A szolgáltatások típusait a következő fejezetben ismertetjük.) Hibrid felhőknek nevezzük a másik három modell vegyes használatát, azaz amennyiben egy vállalat két vagy három modellt is alkalmaz párhuzamosan.
Felhőszolgáltatások típusai, használati módjai
1. ábra: Felhő alapú számítástechnika
Felhő alapú számítástechnika kialakulása és modelljei A felhő alapú számítástechnika – mint fogalom – 2007-ben jelent meg, és 2008-ban terjedt el a világon. Kialakulását elsősorban az internetes technológiák és a virtualizáció fejlődése tette lehetővé. Jórészt a már létező infrastruktúrák használatával, szoftverrendszereik lecserélésével valósították meg először a nagyobb, majd a kisebb vállalatok is. A felhő alapú rendszerek kialakítására négyféle modell létezik. (Wang et al., 2010)
26
Dunakavics
- 2013 / 4.
Jellemzően három szolgáltatástípust különböztetünk meg, mivel az informatikai szolgáltatások mind besorolhatóak ebbe a három kategóriába. A szolgáltatástípusok a felhő alapú infrastruktúra igénybevételének módját definiálják az alábbiak szerint. (Carr, 2012) Amennyiben az igénybe vett szolgáltatás egy szoftver, úgy a Szoftver, mint szolgáltatás (Software as a Service /SaaS/) használatáról beszélünk. Ez a használati mód az elsősorban internetes alkalmazásoknál használt Szolgáltatásorientált architektúra (Service-Oriented Architecture /SOA/) szoftverfejlesztési modellből származtatható. A leggyakrabban használt Saas-al kalmazás a levelezőkliens, amelyet így nem kell a saját gépünkön futtatni, hanem egy böngészővel adott honlapon bejelentkezve olvashatjuk és kezelhetjük leveleinket, valamint újakat is írhatunk a címünkről. Másik gyakori SaaS-használati példa a dokumentumok szerkesztésére használt SaaS-megoldások , azaz a böngészőben használt szövegszerkesztők és táblázatkezelők. A felhőszolgáltatások egy napjainkban még kevésbé használt módja a Platform, mint szolgáltatás (Platform as a Service /PaaS/) használata. Ezesetben a felhasználók csupán egy interfészt kapnak,
Dunakavics
- 2013 / 4.
27
Dukán Péter, Kővári Attila
amelyen keresztül a felhő-infrastruktúra erőforrásait tudják használni. Ez jellemzően számítási erőforrást jelent, amit fájlok titkosításához, videók és hangok kódolásához/dekódolásához tudnak használni. Azt lehet mondani, hogy az igénybevett szolgáltatás maga a futtatási környezet, ahol az – akár általunk írt – kód fut. A harmadik szolgáltatástípus szintén az elsők közt jelent meg az interneten . Az Infrastruktúra, mint szolgáltatás (Infrastructuras a Service /IaaS/) használata virtuális gépek, illetve manapság sok esetben az ún. konténerek futtatását jelenti. Az utóbbi eset operációsrendszer-szintű virtualizációt jelent, azaz egy operációsrendszeren belül izolálhatunk több futtatási környezetet. Fontos megjegyezni, hogy IaaS esetében a hagyományos virtualizációhoz képest jóval nagyobb szabadságfokkal rendelkezik az ügyfél, ugyanis az igénybevett szolgáltatás – virtuális entitás – paraméterét könnyen változtathatja, akár futás közben is.
Virtualizációs módok és lehetséges biztonsági réseik Mivel a felhőszolgáltatások tipikusan különböző virtualizációs módokat használnak, ezért az alábbiakban ezeket a módokat ismertetjük, és a velük kapcsolatosan felmerülő biztonsági problémákat taglaljuk. (Kővári–Dukán , 2012) Teljes virtualizáció: Emulációnak is nevezik, mely során a futtatott programkódok egy értelmező (interpreter) által vannak dekódolva és végrehajtva. Emiatt az így virtualizált alkalmazások futása nagyon lassú a natív, processzoron futó kódokhoz képest. Előnye, hogy egyetlen biztonsági problémáját az jelentheti, ha az emulációs környezetben tesznek lehetővé olyan műveleteket, amellyel egy másik emulált környezetre, vagy az emulációt futtató rendszerre lehet kihatni. Természetesen, amennyiben maga az emulációs alkalmazás tartalmaz biztonsági rést, úgy annak kihasználásával szintén előfordulhat, hogy lehetőség nyílik az egyik környezetből a másikba manipulálni, vagy közvetlenül a futtató rendszerhez (gazdarendszerhez) hozzáférni. Hardver által támogatott virtualizáció: Ilyen esetben a hardver külön utasításkészlettel rendelkezik, amellyel képes elkülöníteni a virtualizált környezeteket. A kód közvetlenül a processzoron fut, ezért
28
Dunakavics
- 2013 / 4.
Felhő alapú számítástechnika Virtualizációs metodológák biztonsága
gyorsított virtualizációnak is nevezik. Biztonsági probléma csak a processzor utasításkészletének hibája esetén lenne elképzelhető, azonban manapság a processzoroknál alkalmazott teljeskörű verifikációnak köszönhetően erre kicsi az esély, így ez tekinthető a legbiztonságosabb módnak. Azonban fontos megjegyezni, hogy sok esetben olyan meghajtó-alkalmazásokat telepítenek az ilyen virtuális gépekre, amelyek a gazda-operációsrendszerrel biztosítják a kapcsolattartást. Ezen alkalmazások segítségével lehetőség nyílhat a kártevők számára, hogy átjussanak a gazdarendszerre, és onnan akár másik virtualizált környezetbe. Így biztonságkritikus alkalmazás esetén nem érdemes telepíteni e szoftverösszetevőket, és érdemes letiltani a gazdarendszeren az ezekhez szükséges integrációs eszközök biztosítását, ugyanis amennyiben a meghajtó-programok nem is kerülnek telepítésre, de az integrációs szolgáltatást biztosítja a gazdakörnyezet, úgy a megfelelő rendszerhívásokkal egy kártevő is meg tudja valósítani a kettő közti kommunikációt. Részleges virtualizáció: Hibrid virtualizációnak is nevezik ezt a metodológiát, ugyanis míg a hardver egyes részei hardveresen virtualizáltak, addig más részei csupán emulálva vannak. Ilyen esetben értelemszerűen mindkét virtualizációnál az említett biztonsági problémák jelentkezhetnek. Paravirtualizáció: Op erációsrendszer-által támogatott virtualizációnak is nevezik. Ilyenkor a gazdarendszer csupán egy vékony rétegként fut az adott hardveren, és az általa nyújtott interfészt használják a paravirtualizált alkalmazások. Ez az emuláció egy olyan módja, mikor bizonyos rendszerhívásokat közvetlenül továbbítunk a hardver felé ezen a vékony rétegen keresztül. Sebessége az emuláció és a hardver által támogatott virtualizáció közötti. Biztonsági problémát az operációsrendszer által biztosított vékony rétegben lévő biztonsági rések jelenthetik elsősorban, azonban fontos megjegyezni, hogy a rendszerhívások használatával lehet olyan kiskapukat is találni, amelyeken keresztül át lehet jutni egy másik virtualizált környezetbe, vagy a gazdagépre. Operációsrendszer-szintű virtualizáció: Az operációsrendszer magjára (kernelére) épül, amely több virtuális futtatási környezet engedélyez. Ilyenkor a rendszerhívásokat teljesen elkülöníti az operációsrendszer, emiatt konténereknek vagy börtönöknek is nevezik ezt a virtualizációs módot. Az alkalmazások elkülönülésének szintje teljes mértékben az operációsrendszertől és beállításaitól függ. Megfelelő beállítások esetén a kernelben lévő biztonsági rések jelenthetnek csak problémát.
Dunakavics
- 2013 / 4.
29
Dukán Péter, Kővári Attila
Klaszter-virtualizáció: Több szerver egy virtuális gépet alkot, ami elsősorban a nagy számítási igényű alkalmazások esetében hasznos. Mivel egy adott szerveren egy adott alkalmazás valamely folyamata fut, így egyedül szerverek közti hálózati kapcsolaton keresztül fenyegetheti veszély a futó alkalmazást.
Felhő alapú számítástechnika Virtualizációs metodológák biztonsága
Ahogy a virtualizációs módszerek elemzéséből látszik, négy fő biztonságkritikus-el emet különböztethetünk meg: az emulációt megvalósító szoftvert, a virtuális környezet integrációját megvalósító meghajtó-programokat, magát az operációsrendszert és a hálózati kommunikációs interfészt. Az emulációt megvalósító alkalmazás és az operációsrendszer esetében két típusú védekezési lehetőség áll fenn. Az egyik a biztonsági rések mielőbbi befoltozása a hozzájuk megjelenő javítócsomagok (patchek) azonnali feltelepítésével. A másik lehetőség az operációsrendszer jogosultsági beállításainak finomhangolása biztonsági szempontok figyelembevételével. Míg az első esetben a probléma megoldása elsősorban nem a felhőszolgáltatón, hanem a szoftverfejlesztőkön múlik – leszámítva a frissítések gyakoriságát – addig a második esetben tipikusan a szolgáltatók feladata a rendszereik megfelelően biztonságos beállítása. Ez utóbbi eset a megoldás a meghajtó-programok és kommunikációs interfészek esetében is, azaz elsősorban a szolgáltatón múlik e biztonsági kockázatok kiszűrése. Összegzésképpen azt javasoljuk, hogy a felhőszolgáltatások kiválasztásakor elsősorban a szolgáltató referenciáit érdemes áttekinteni, valamint a szolgáltatás licenszszerződését (SLA) szükséges megvizsgálni, hogy megfelelő képet kapjunk az általunk igénybevett szolgáltatás biztonsági szintjéről. Természetesen egy IaaS esetében nem csupán a szolgáltatónak, hanem mi magunknak is jobban oda kell figyelnünk a rendszereink biztonsági beállításaira, ugyanis jellemzően ez a kritikusabb pont egy KKV esetében, szemben a nagyvállalatoknál alkalmazott biztonsági előírásokkal és szabályzatokkal.
Irodalom 2. ábra: Kapcsolatok a felhőkben
A. Kővári, P. Dukán (2012): KVM &OpenVZ virtualization based IaaS Open Source Cloud Virtualization Platforms: OpenNode, Proxmox VE. In. József K. Tar (szerk.): International Symposium on Intelligent Systems and
Védekezési módszerek
Informatics. Subotica, Serbia: Institute of Electrical and Electronics Engineers, 335-339. P. Mell, T. Grance (2011): The NIST Definition of Cloud Computing. Recommendations of the National Institute
A felhő technológia te rjedésével egyre gyakrabban merül fel a biztonságának kérdése is. Kutatásunkban megvizsgáltuk az egyes virtualizációs metódusokban rejlő biztonsági hiányosságok lehetőségeinek típusát. Most e hiányosságok megoldására, azaz a felhő- t echnológiák lehető legbiztonságosabb használatának módjára ismertetjük a lehetőségeinket.
30
Dunakavics
- 2013 / 4.
of Standards and Technology, 800-145, 2. L. Wang, G. von Laszewski, A. Younge, X. He, M.Kunze, J. Tao, C. Fu (2010):„Cloud Computing: a Perspective Study”. New Generation Computing, 28, 137-146.
Dunakavics
- 2013 / 4.
31
Dukán Péter, Kővári Attila
Internetes hivatkozások Nicholas Carr (2012): Cloud Computing, http://www.academicroom.com/topics/cloud-computing (2013.04.23)
32
Dunakavics
- 2013 / 4.