TARTU ÜLIKOOL LOODUS- JA TEHNOLOOGIATEADUSKOND Tehnoloogiainstituut Dmitri Pantšenko Lahendused asutustele avatud lähtekoodiga tarkvara näitel Bakalaureusetöö Juhendaja: Artjom Lind Tartu 2014 SISUKORD 1. Sissejuhatus . . .. . . . .. . . .. . . . .. . .. .. .. . . .. . . . .. .. .. .. .. . . .. . . . . .. . .. . . .. .. . . . . .. . . .. .. . . . . .. . . .. . . . . .. . . . .. . .. . . . . . . . . . . .. . . . . . . . . . .. . . .. 4 1.1. Avatud koodiga tarkvara . . .. . .. . . .. . . . .. . . .. . . . . . . . .. . . . . . .. . .. . . . .. . . . .. . .. . .. . . . . . . . . .. . . . .. . . . . . . . .. . . .. . .. .. . .. .. .. .. 5 1.1.1. Sõltuvuse ja sellega kaasnevate riskide vähendamine . . . . .. . . . .. . .. . . .. .. . . .. . . . . .. .. .. . . . . . . . . .. 5 1.1.2. Stabiilsus, turvalisus ja usaldavus . . . .. . .. . . . . .. .. .. . . . . .. .. . . . .. . . .. . .. . .. . .. . .. . . . .. . .. . . . . .. .. .. . . . .. . . .. . 6 1.1.3. Ühildavus teiste riistvaraplatvormidega . . . . . . . . .. . .. . .. .. . .. .. . . . . .. . . .. . . . . . . . .. . . . . . . . . . . . . . .. .. . . . . . . 6 1.1.4. Kohandamise lihtsus .. . . . .. . . . . . . . . . .. .. . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . .. . . . . . . . . . . . . . . . . . . . . .. .. . .. . 6 1.1.5. Kokkuhoid IT kuludel ja kohaliku IT sektori stimuleerimine . .. . .. . . .. . .. . . . .. .. . . .. . .. . .. . . 7 2. Turul olevad kommertslahendused ja -tooted . .. . .. . . . . . . . . . . .. . . . .. . . . . .. .. . . . . . . . . .. . . . . . .. . . .. . . .. . . . . .. . .. .. . . . . . 8 2.1. Marsruutimine . . . . .. . . .. .. . .. . .. .. . . . . . . .. . . .. . . . . .. .. . . .. . . . . .. . . . . .. . .. . .. . . .. .. . . .. . .. . . . . . . . . .. . . .. . . . .. . .. . . .. .. . . . . . .. . . . 8 2.1.1. Cisco Systems tooted .. . . .. . . . .. . . .. . . . . . . .. . . .. . . .. . . .. . .. .. . .. . . . .. .. . . . .. . . .. . . .. . .. . .. . . . . . . . . . . . .. .. . . .. .. . . . . 8 2.1.2. Hewlett-Packard tooted . .. . .. . .. . . . .. .. . . . .. . . .. . . .. . . . . .. . . . . . . . . . . . .. . .. . . . . .. . .. .. . .. . . .. . . .. . .. . . .. . .. .. . .. .. 9 2.1.3. Huawei tooted . . . .. . . .. . . . . .. . . . . . . . . .. . .. .. . . .. . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . .. . . . . . . .. . . . . .. . 10 2.1.4. MikroTik tooted . . . .. . . . . .. . . . . .. . . .. . .. . . .. .. . .. .. . . .. . . . . .. . .. .. .. . . . . .. . . . . . . . .. . . . . . . . .. .. . . . .. .. . . . . . . . . . . .. . . . 11 2.2. Riistvara virtualiseerimine . . . .. . . .. . . .. . .. . . . .. . . . .. . .. . . . .. . .. .. . .. . .. . . . .. . . . .. . .. . .. . .. . . . . .. . . . . . .. .. . .. . . . . . . . . .. 11 2.2.1. VMware vSphere . . . . .. . .. .. . .. .. . .. .. .. . .. .. . . .. . . . . .. . . . .. . . . .. . . . . . . . . .. . . . .. . . . .. . . . . . .. . . .. .. . .. . . . .. . . . .. .. .. 12 2.2.2. Microsoft Hyper-V .. . .. . .. .. . .. . .. . . . . . . .. . . . . . . .. . .. . . . .. . .. . . . . .. . . . .. . .. . . .. .. . . .. .. . . .. .. .. . . .. . . .. . . .. .. . . . . 14 2.2.3. Citrix XenServer . .. . . . . . . .. .. . . . . . .. . . . . . . . . .. . . .. . . . . . .. .. . . . .. . . . . . .. .. . . . . .. . . .. . . . . .. . .. . .. . . .. .. .. .. . . . . . . . . .. 15 2.3. Veebiserver .. . .. . .. .. . . . . . . . .. . . . . . . . .. .. . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . .. . . . . .. . . . . . . . . . . . . .. . . . . . . . . . . . . . . . .. . . . 16 2.3.1. Microsoft Internet Information Services .. . . .. .. .. . . .. . .. . . .. . .. . . . . . . . .. . . . . . . .. .. . . .. . .. . . . . . . . . .. . . 17 2.4. E-postiserver . .. . . . .. . . . . . . . .. . . .. . . .. . .. . .. . . .. . . .. . . . . . .. . . . . . . . . .. .. . . . . . .. . . . . . . . . .. . . . . . . . . .. . .. . .. .. . . . . . .. . .. . . . . . . . . .. 17 2.4.1. Microsoft Exchange Server . . . .. . . . . .. . .. . .. . .. . .. . . .. . . . .. . .. . .. .. . .. .. .. .. .. . . .. . . .. .. . . .. . . . .. . .. .. . . .. . .. 18 2.5. Kodukeskjaam . . .. . . .. . . . . .. . .. . .. . . . . .. . . . . . . . . . .. .. . .. .. . . . . .. . . . .. . .. . .. . .. . . .. . . . . . . . .. .. . . .. . .. . . . .. . . .. . . . . .. . . . . .. .. . . 19 2.5.1. 3CX Phone System . . . . .. . . .. . . . . .. .. . .. . . . . .. . . . . .. . .. . . . . . . . .. . .. . .. . .. . .. . .. . .. . . . . . .. . . . .. . . . .. . . . .. .. . . .. . . . . 20 3. Lahendused avatud lähtekoodiga tarkvara näitel . .. . . .. . . .. .. . . .. . . .. . . .. . . .. . .. . .. . . .. . . . . . . . . . .. . . . . . . .. . . .. .. . 22 3.1. Marsruutimine . . .. . . .. . .. .. . . . .. . . . . .. . . . .. . . . .. . . . .. . .. . . .. . . . . . .. . .. . . . .. .. . . .. . . . . . .. . . . . .. . . . . . . . . .. . . .. . . . .. . . .. . .. . .. .. 22 3.1.1. Marsruutimisprotokollid . .. .. . .. . . .. . . . . .. . . . . .. . .. .. .. . . .. . .. .. . .. . . . .. . .. . .. . . .. . .. . . . . . .. . .. . . .. . . . . .. . . . .. . 22 3.1.2. Läbilaskevõime hindamine SSL-tüüpi virtuaalsetes privaatvõrkudes (VPN) . .. . . 23 3.1.3. Näiteid Debian GNU/Linux distributsioonil . . . .. .. . .. . . . . . . . . . . . . . .. . . . . . . . . . . . . .. . . . .. . . .. .. . . . . .. 25 3.2. Riistvara virtualiseerimine . . .. .. . .. .. . . .. . .. . . . .. . .. .. . . . . . . .. . . . . .. .. .. . . . . .. . . . . . . .. . . .. .. . . . .. . . . .. . . . . . . . .. .. . . . . . 28 3.2.1. KVM .. . . .. . .. . . . . . .. . . .. . . . . . .. . . . . . . . . . .. . . .. . . . .. . .. . . . . . .. .. . . . . . . .. . .. . .. . . . .. . . . .. . . . .. .. .. .. .. . . . .. .. . . . .. . .. . . . . . . 29 3.2.2. Haldustarkvara libvirt . . .. . . . .. .. . . . . .. . . .. . . . . .. . .. . . .. . .. . . .. . .. . . .. .. . . . . .. . .. .. . . . .. . . .. . . . .. .. .. . . . . .. .. . . .. 30 3.3. Veebiserver . .. .. .. . .. . . .. .. . . . . . . . . .. . . . .. . . . . .. . . . . .. . . . . .. . . .. . .. . .. . .. . .. . .. . .. . . .. . . . . .. . .. . . . . . . . .. . .. . .. . . .. . . .. . . .. . .. . . 32 3.3.1. Veebiklastri seadistramine Nginx ja Apache HTTP Server abil .. . . . . .. . . . . . .. . . . .. . . . . .. . 33 3.4. E-postiserver . .. . . . .. . . .. . . . . .. . . .. . .. . . .. .. . . . .. . . . . . .. . . .. .. .. .. .. .. .. .. .. .. .. . . .. . . .. .. . .. . .. . . . .. . . . . .. . . .. .. . . . .. .. . . . . . . 36 3.4.1. E-postiserver Postfix, Dovecot ja RoundCube abil . . . . .. . . . .. . . . . .. .. .. . .. .. . .. . . .. . . . . .. . .. . . .. 36 2 3.5. Kodukeskjaam . .. .. . . .. . . . . .. .. . .. .. .. .. . . . .. . . .. .. .. . . . . . .. . . .. . . . .. . . . .. .. .. . . .. . . . . .. . . . .. . .. . . . . . . . . . .. . . .. . .. . .. . .. . . . . . 40 3.5.1. Näiteid kodukeskjaama seadistamisest Asterisk abil . .. . . .. . . . . . . . . . . . . . . . . . . . .. . . .. .. . . . . . . .. . . 41 4. Kokkuvõte . .. .. .. . . . . . .. .. . . .. . . .. .. . . . .. .. . . . . .. . . . . . . . . . . .. . . . .. . .. . .. . . .. . .. .. . . . . . .. . .. . . .. . . . . . .. . . . . . . . .. . . . . . .. . . . . . . . . .. . . .. .. 46 5. Kasutatud kirjanduse loetelu . .. . . .. . . .. . . .. . . . . . .. . . . . .. . . .. . . .. . . .. . .. . .. . . . . . .. . . . . . .. . .. . .. .. . .. . .. .. . . .. . .. . .. . . .. . . . . .. 49 6. Summary . .. .. . . .. . . . .. . . . . . . . .. . . . . . .. .. . . . . .. . . . .. .. . .. . .. . . . . . .. . . . .. . .. . . .. . . .. .. . .. . . .. . .. . .. . .. . .. . . . . .. . .. . . . . . . . .. . . . . .. . . . . . . . 55 7. Lihtlitsents lõputöö reprodutseerimiseks ja lõputöö üldsusele kättesaadavaks tegemiseks . 58 3 1. SISSEJUHATUS Ühiskonna arenguga tähtsustatakse järjest rohkem informatsiooni säilivust, levikut ja leviku kiirust. Selline nähtus on muutnud arvutusmasinad paljudele inimestele igapäevasteks töövahenditeks. Samuti ka paljudes ettevõtetes on infotehnoloogia muutunud äritegevuse lahutamatuks osaks. Ettevõtlus nõuab IT-lt kvaliteetseid lahendusi, kiire paigaldusega ja võimalikult odavalt. Igal arvutil on kaks eraldiseisvat, kuid üks teisest sõltuvat komponenti - riistvara ja tarkvara. Riistvaraga tähistatakse elektroonilisi komponente, mis töödeldes elektroonilisi signaale võimaldavad manipuleerida andmetega. Tarkvara all mõistetakse programmide kogu, mis annab riistvarale juhiseid, kuidas töödelda andmeid. Tänapäeval müüakse enamik üldotstarbelisi arvuteid juba eelnevalt paigaldatud tarkvaraga. Leidub ka arvutimudeleid, mida pole võimalik osta ilma operatsioonisüsteemita. Lisaks operatsioonisüsteemile uuel arvutil võib olla tootja poolt paigaldatud kontoritarkvarapakett ja viirusetõrje. Kuna paljudel arvutitootjatel on sõlmitud lepingud tarkvaratootjatega, siis eelnevalt paigaldatud tarkvara on üldjuhul tasuline. Operatsioonisüsteemi hind on tavaliselt uue arvuti hinna sees, kuid näiteks tekstitöötlusprogrammi käivitamisel või viirusetõrje juhtpaneeli avamisel selgub, et tarkvara on vaja veel välja osta. [1] Eesti haridussüsteemis on ligikaudu 10000 arvutit ning enamikel nendest on paigaldatud kommertstarkvara. Endise Eesti haridus- ja teadusministri Jaak Aaviksoo teatel soovis tarkvaratootja Microsoft tõsta hinda enam kui 10 korda. Pikaajaliste läbirääkimiste tulemusena 2013. aasta lõpus jõuti kokkuleppele, et hindade tõus toimub järk-järguliselt aastani 2017. [2] Samuti tähendab kommertstarkvara kasutamine haridusasutustes ühiskonna süstemaatilist sõltuvust sellest. 2012. aastal viidi läbi uuring, millele vastas 31 Tallinna munitsipaalkooli. Uuringust selgub, et 10 kooli (32%) serveritel töötavad ainult Microsoft Windows perekonna operatsioonisüsteemid, 9 kooli (29%) serveritel töötavad nii Microsoft Windows perekonna kui ka avatud lähtekoodiga operatsioonisüsteemid ja 4 kooli (13%) serveritel ainult avatud lähtekoodiga operatsioonisüsteemid. Ülejäänud koolidele, millel puuduvad oma serverid, rendib Tallinna Haridusamet servereid ja ostab siise tugiteenust, kusjuures kasutatakse ainult kommertstarkvara. Samuti on uuringus märgitud, et baasteenused nagu DHCP ja DNS on 4 lahendatud avatud lähtekoodiga tarkvara abil ainult neljas koolis. E-postiteenuste osutamiseks kasutatakse avatud lähtekoodiga tarkvara ainult viies koolis, 19 koolis töötab Microsoft Exchange lahendus ja seitse kooli kasutab pilveteenuseid. [3] Käesoleva töö eesmärgiks on näidata avatud lähtekoodiga tarkvara kasutamise ja juurutamise eeliseid asutustes kommertstarkvara ja -toodete ees. Töö on suunatud isikutele, kes omavad kogemusi asutuste IT infrastruktuuri haldamises. 1.1. Avatud koodiga tarkvara Avatud lähtekoodiga tarkvara arendatakse ja levitatakse erinevate litsentside all. Sõltumatult selle litsentsi tüübist ei ole kasutamine ja levitamine piiratud. Nimetatud nähtusest võib tekkida mulje, et tegemist on heategevusprojektiga. Tegelikkuses on avatud lähtekoodiga tarkvaral oma ärimudel, mis sisaldab mitmeid varjatud tuluallikaid. Üheks selliseks tuluallikaks on tasuline seadistamis- või tugiteenus. [4] Teisest küljest on paljud riistvaratootjad huvitatud, et nende riistvara oleks võimalik kasutada ilma lisakulutusteta tarkvarale. Selliste riistvaratootjate hulka kuulub Intel, kes on suuruselt teine Linux-i tuuma arendaja ja Linux Foundation-i sponsor. [5] Antud ärimudeli eeliseks on kiiresti kasvav kasutajaskond, mis aitab kaasa tarkvara kiirele levikule. Järgnevates alampeatükkides on kirjeldatud võimalused, mis kaasnevad avatud lähtekoodiga tarkvara kasutamisega. 1.1.1. Sõltuvuse ja sellega kaasnevate riskide vähendamine Ettevõtted vajavad tarkvara paljude kriitiliste ülesannete lahendamiseks nagu näiteks andmebaaside haldus, e-kaubandus, raamatupidamine ning erinevate andmete töötlemine ja analüüs. Ettevõtluses esinevad sageli ärisuundade arengud ja muutused, millega peavad kaasnema muutused tarkvaras. Igasugused muudatused võivad olla rahaliselt kulukad ja aeganõudvad, kuid sellise riskiga tuleb alati arvestada. Kui ettevõtte on juba varem otsustanud kasutusele võtta kommertstarkvara, siis selle tootja ei pruugi alati nõustuma seda edasi arendama ning tulevased veaparandused on tootja kontrolli all. Samuti on kasulik meeles pidada, et iga toote tugi ei ole lõpmatu ning igal tootjal on õigus muuta oma toodete hindu ja kasutamistingimusi. [6] Sellised riskid kaasnevad kommertstarkvaraga ja võivad tähendada suurt kasumikadu. 5 1.1.2. Stabiilsus, turvalisus ja usaldavus Avatud lähtekoodiga tarkvara arendavad inimesed, kes seda ise kasutavad. Koostöö erinevate arendajate vahel tähendab kiiret eesmärkide saavutamist. Kuna tarkvara lähtekood on avatud, siis ka vigade ja turvaaukude tuvastamise protsess toimub tunduvalt kiiremini ja efektiivsemalt, sest lähtekoodiga on võimalus kõigil huvilistel tutvuda. Kommertstarkvara kasutamisel kasutajal tuleb teavitada arendajat veast, arendaja aga peab kinnitama vea, leidma lahenduse ja katsetama seda ning seejärel väljastama paranduse. Selline protsess võib võtta nädalaid või kuid, mis võib tekitada ettevõttele kahju. Lisaks piiravad paljud kommertstarkvara litsensid ja suletud lähtekood iseseisvate paranduste või täienduste tegemist. [7] Paljudel kommertstarkvaratoodete litsents sisaldab väidet, et tootjal on õigus koguda andmeid kasutaja tegevusest toote arendamise eesmärgiga. Näiteks vaikeseadetega Internet Explorer saadab andmed kasutaja tegevusest Customer Experience Improvement Program, SmartScreen Filter ja Suggested Sites tehnoloogiate abil, kusjuures saadetavate andmetega ei ole võimalik tutvuda. [8] Leidub piisavalt palju selliseid kommertstooteid, mis ei luba statistika kogumist ja saatmist keelata. Avatud lähtekoodiga tarkvara puhul hoolitsevad arendajad alati ise selle eest, et nendel oleks valikuvõimalus. 1.1.3. Ühildavus teiste riistvaraplatvormidega Tänapäeval enamik üldotstarbelisi arvuteid ja suurim osa servereid töötavad arhitektuuridel x86 või x86_64. Näiteks kui ettevõttel suurenevad vajadused arvutusjõudlusele või tekib mõni muu põhjus ühelt arhitektuurilt teisele kolimiseks, siis avatud koodiga tarkvara kompileerimine ja paigaldamine ei ole keeruline ega aega või muid ressursse nõudev protsess. Sellel samal põhjusel avatud lähtekoodiga tarkvara, mis on kõigile avalikult kättesaadav, on juurutatud NASA kosmosesüstikutesse, nutitelefonidesse ja navigatsiooniseadmetesse. [6] 1.1.4. Kohandamise lihtsus Sõltumata litsensi tüübist on enamik olemasolevaid tarkvaralisi lahendusi universaalsed, et tagada mingit funktsionaalsust suuremale kasutajate arvule. Võrreldes erilahendusega universaalne toode ei ole võimeline rahuldama kasutaja kõiki vajadusi. Juhul, kui on olemas osaliselt vajadusi rahuldavad tooted, mida on võimalik täiendada, ei ole otstarbekas arendada nende analooge algusest. Kasutades avatud lähtekoodiga tarkvara, on olemas võimalus muuta tarkvara olemasolevaid funktsioone ja täiendada uutege, kusjuures ajalised ja rahalised 6 kulutused kaasnevad ainult modifitseerimisele. Samuti saab integreerida antud tarkvara olemasolevatesse lahendustesse. 1.1.5. Kokkuhoid IT kuludel ja kohaliku IT sektori stimuleerimine Avatud lähtekoodiga tarkvara kasutamine ja levitamine tasuta tähendab ettevõttele IT kulude vähenemist tarkvara litsentside arvelt. Avatud lähtekoodiga tarkvaral põhinevate lahenduste juurutamise hind võib olla suurem kommertstarkvaral põhinevatest, kuid tänu tarkvara maksumuse puudumisele on lahenduste lõpphind väiksem. Üleminek avatud lähtekoodiga tarkvarale suurendab nõudlust infosüsteemide arendamis- ja tugiteenustele, mis tähendab kohaliku IT sektori stimuleerimist ja uute töökohtade teket IT sektoris, lisaks ka impordi vähenemist. [9] 7 2. TURUL OLEVAD KOMMERTSLAHENDUSED JA -TOOTED 2.1. Marsruutimine Tänapäeval on raske leida tegutsevat ettevõtet, millel puuduks vajadus internetiühendusele. Suure tõenäosusega on ettevõttel ka rohkem kui üks seade, mida on vaja ühendada andmesidevõrku. Selline olukord tähendab, et kohalik võrk on vaja eraldada Internetist, mis omakorda nõuab marsruuteri olemasolu. Kui on tegemist ettevõttega, millel on kuni 25 töötajat, kes vajavad ligipääsu avalikele veebiressursidele ja e-postile, siis saab vaieldamatult piirduda kodu ja väikettevõtetele mõeldud toodetega. Sellised marsruuterid on saadavad kodutehnika poodidest ning nende hind jääb vahemikku 20 kuni 50 eurot. Asutused, kus on palju töökohti, mis vahendavad suuri andmemahte, vajavad krüpteeritud virtuaalseid privaatvõrke või nõuavad lisateenuseid (näiteks veebiproksi ja võrguliikluse kontrollimine või jälgimine), ei saa oma nõudeid täita kodu ja väikeettevõtetele mõeldud ruuteriga. Nimetatud olukordades on tavaliselt kaks tüüplahendust: 1. vajaliku funktsionaalsusega kommertstoote leidmine, ostmine ja seadistamine; 2. x86-x86_64 platvormil üldotstarbelise arvuti ostmine ja seadistamine. Järgnevad alampeatükid moodustavad ülevaate mõnedest turul olevatest marsruuteritest. 2.1.1. Cisco Systems tooted Ettevõte Cisco Systems on loodud 1984. aastal ning on tegelenud asutamise algusest võrguseadmete arenduse ja tootmisega. Esimene müüki läinud marsruuter oli AGS (1986. aasta) ning selle põhierinevus konkureerivatest toodetest oli mitme erineva OSI mudeli kolmanda kihi protokolli tugi. [10] Cisco Systems rühmitab oma ruuterid kolme klassi: 1. Branch (harukontorid, väikse ja keskmise suurusega ettevõtted); 2. Network Edge (suured ettevõtted, linnavõrgud ja laivõrgud); 3. Service Provider (teenuspakkujad ja magistraalvõrgud). Kuna käesolev töö ei puuduta suuri ettevõtteid ega magistraalvõrke, tehakse ülevaade ainult esimesest klassist. Esimene klass sisaldab mitu tooteseeriat: 800. 1900, 2900 ja 3900, 8 kusjuures iga tooteseeria sisaldab mitu mudelit [11]. Tooteseeriad erinevad peamiselt soovitava kasutajate arvult, läbilaske võimelt ja laiendusvõimalustelt. Allolevas tabelis on toodud välja esimese klassi tooteseeriate erinevused. RV 800 1900 2900 3900 100 Mbps WAN portide arv 0-2 1 0 0 0 1 Gbps WAN portide arv 0-2 0-1 2 2-3 3-4 Laienduskaartide (EHWIC) arv 0 0 2 4 3-4 Soovitatav internetiühenduse kiirus, Mbps tundmatu ≤15 ≤25 ≤75 ≤350 Läbilaskevõime, kadudeta, Mbps 90-800 197-1400 2770-2932 3114-5136 6903-8675 Läbilaskevõime, IPSec, Mbps 5-97 46-125 149-170 170-282 770-1503 Läbilaskevõime, SSL VPN, Mbps 0-25 10-25 50-75 75-150 200-500 Hinnavahemik, EUR 70-370 270-1700 650-1900 1050-4400 ≥5700 Tabel 1. Cisco Systems madala klassi marsruuterite seeriate võrdlus. [12], [13] Mudelite peamiseks erinevuks on lisavõrguliideste arv ja tüüp (näiteks WLAN, DSL või 3G). Alates 800-seeriast kõikidel mudelitel on olemas riistvaraline kiirendi VPN ühenduste krüpteerimiseks järgmiste algoritmidega: DES, 3DES ja AES. Samuti kõik mudelid välja arvatud 800-seeria odavamad toetavad laia valiku VPN standarte: SSL VPN, IPSec, Easy VPN, Dynamic Multipoint VPN (DMVPN), Group Encrypted Transport VPN (GET VPN), V3PN, MPLS VPN. [11] Kõikidele eelnevalt nimetatud standarditele peale IPSec on Cisco Systems-il omandiõigus, nende kasutamine on piiratud litsentsidega ning nende kasutamiseks on vaja mõlemal pool Cisco Systems-i seadet või tarkvara. [11], [14] 2.1.2. Hewlett-Packard tooted 2010. aastal ostis Hewlett-Packard ettevõtte 3Com, mis oli maailmas üks juhtivaid võrguseadmete tootjaid. [15] Võrguseadmed moodustavad väga väikse osa ettevõtte Hewlett- Packard (edaspidi HP) toodangust, kuid vaatamata sellele on HP-l lai valik marsruutereid, mis on jaotatud järgmistesse klassidesse: 1. Branch (väikesed, keskmised ja suured ettevõtted); 2. Campus (suured ettevõtted, linnavõrgud ja laivõrgud); 3. Data Center (andmekeskused ja magistraalvõrgud). 9 Väikestele ja keskmise suurusega ettevõtetele sobivad järmised seeriad esimesest klassist: MSR900, MSR20 ja MSR30. Nimetatud seeriad erinevad läbilaskevõime võimepoolest ning kõik välja arvatud esimene võimaldavad kasutada laienduskaarte. Allolev tabel toob välja peamised erinevused. MSR900 MSR20 MSR30 Läbilaskevõime, 70-300 160-180 220-360 Kpps Läbilaskevõime, 995 2000 3000 IPv4, Mbps Läbilaskevõime, 144-148 396 1902-3258 IPSec, Mbps Hinnavahemik, 250-1250 600-1650 1050-6000 EUR Tabel 2. Hewlett-Packard madala klassi marsruuterite seeriate võrdlus. [16], [17] Igal tooteseerial on võimalik erinev võrguliiste konfiguratsioon (näiteks WLAN, DSL või 3G) ning kõik seeriad võimaldavad riistvaralist kiirendust IPSec ühenduse krüpteerimiseks. Lisaks IPSec VPN standardile on toetatud DVPN, mis on HP omand. Ruutimisprotokollidest on toetatud RIPv1, RIPv2, OSPF ja IS-IS. 2.1.3. Huawei tooted Huawei on 1987. aastal loodud Hiina ettevõte, mis toodab telekommunikatsiooniseadmeid. Lisaks väikese ja keskmise suurusega ettevõtetele toodab Huawei marsruutereid ka lai- ja magistraalvõrkudele. Tooteseeriad erinevad läbilaskevõime ja funktsionaalsuse poolest, seeria mudelid aga liideste konfiguratsiooni poolest. Allolev tabel kirjeldab väikse ja keskmise suurusega ettevõtetele suunatud Huawei marsruutereid. [18] AR150 AR200 AR1200 AR2200 LAN ethernet porte 4 FE 4 FE 8 FE - Läbilaskevõim, 300 450 450 350-5000 Kpps Läbilaskevõime, 500 800 990 1900-5900 IPv4, Mbps Läbilaskevõime, teadmata 40 340 1300-3000 IPSec, Mbps Hinnavahemik, 300-750 400-1730 630-1460 ≥800 EUR Tabel 3. Huawei lihtsamate marsruuterite seeriate võrdlus. [18], [19] 10 Kõik seeriad toetavad IPSec, GRE ja L2TP VPN standarte, alates AR200 seeriast on toetatud ka SSL VPN. Samuti toetavad kõik marsruuterid RIP v1/v2, OSPF, IS-IS ja BGP ruutimisprotokolle. [18] 2.1.4. MikroTik tooted MikroTik on 1995. aastal registreeritud Läti ettevõte, mis tegeleb nii kaabel- kui ka raadiovõrguseadmete arendamisega ja tootmisega. Tuntumad tooted on RouterBOARD – suure mudelivalikuga ruuterite peamoodulid ja RouterOS – laiade võimalustega marsruuteritele mõeldud operatsioonisüsteem, mis põhineb Linux tuumal. Enamikul mudelitest leidub mitu versiooni, mis erinevad liideste tüübilt ja arvult ning lisade poolest (näiteks USB port). Samuti on võimalik enamik mudeleid osta ilma korpuseta või valida tava-, välis- ja püstakukorpuse vahel. [20] Allolev tabel toob esile mõnede mudelite erinevused. 433 435 450 493 2011 800 1016 1036 Ethernet portide 3 3 5 9 10 3 12 8-12 arv MiniPCI pesede 3 5 0 3 0 4 0 0 arv Läbilaskevõime, 0,2 1 0,2-1 0,2 1,2 1,9 12,0 27,9 IPv4, Gbps Hinnavahemik, 90-165 190 70-100 130- 80-100 360 625 1000- USD 200 1300 Tabel 4. MikroTik marsruuterite mudelite võrdlus. [20] MikroTik poolt arendatav RouterOS toetab erinevaid ruutimisprotokolle, näiteks RIP v1/v2, RIPng, OSPF v2/v3, BGPv4, mitmeid VPN standarte, sealhulgas IPSec, OpenVPN, PPTP L2TP ja SSTP ning erinevaid teenuseid nagu veebiproksi, veebi pöördproksi, SOCKS, DNS, Samba ja NTP. RouterOS on ametlikult toeatud x86 arhitektuuril. [21] 2.2. Riistvara virtualiseerimine Kui on olemas vajadus osutada korraga mitu erinevat teenust nagu näiteks veeb, e-post ja VoIP, siis ei ole otstarbeskas seadistada kõik ühele operatsioonisüsteemile. Sellega kaasneb mitmeid probleeme, näiteks ühe teenuse turvariskid või ülekoormus mõjutavad teiste teenuste turvalisust või kättesaadavust vastavalt, samuti on teenuste migreerimine tulevikus raskendatud. Üheks võimalikuks lahenduseks on iga teenuse paigutamine sõltumatule 11 riistvarale, mis kindlustab teenuseid sõltumatusega üks teisest, kuid samal ajal ka mitmekordistab kulusid riistvarale, selle ülalpidamisele, elektrienergiale ja jahutusele. Tänu hoogsale riistvara arengule suure tõenäosusega ükski varem nimetatud teenustest ei kasuta riistvaralisi ressurse täies mahus. Veelgi enam, kui näiteks e-posti serveril on alla 100 postkasti, siis suurima osa ajast on sellepoolne ressurside kasutatavus tühikäigulähedane, ehk suurim osa riistavaralisi ressursse on kasutamata. Selline olukord tähendab vahendite raiskamist, ning probleemi leevendamiseks üks populaarne lahendus on virtualiseerimistehnoloogia juurutamine. Riistvara virtualiseerimise mõte ei ole uus, selle juured pärinevad eelmise sajandi kuuekümnendatest. Vaatamata sellele virtualiseerimistehnoloogia toega x86 arhitektuuril protsessorid ilmusid ainult 2006. aastal. Vähem kui kümne aastaga on loodud mitmeid virtuaalmasinahaldureid ehk hüperviisoreid, mis erinevad peamiselt tüübi, litsensi ja erinevate funktsioonide/piirangute poolest. Viirtuaalmasinahaldurite tüüpe on kaks: esimene, kui hüperviisor on iseseisev operatsioonisüsteem ja teine, kui hüperviisor töötab mõne teise operatsioonisüsteemi peal. [22] Sõltumata ettevõte tegevusalast tihtipeale ka suurte kogemustega süsteemiadministraatoril on keeruline teha valik saadaval olevatest virtuaalmasinahaldurite hulgast. Tavaliselt hinnatakse järmisi omadusi: stabiilsus, turvalisus, funktsionaalsus, paindlikkus ja toetavus. Järgnevad alampeatükid annavad ülevaate mõnedest kommertslahendustest. [23] 2.2.1. VMware vSphere Ettevõte VMware alustas tegevust 1998. aastal ning aasta hiljem esitles oma esimest toodet VMware Workstation, mis teostas riistvara virtualiseerimist ainult tarkvaraliselt. Mõned aastad hiljem siseneti ka serverite turule. Aastal 2011 ilmus vSphere 5.0, mille kaks tähtsamat komponenti on ESXi (hüperviisor) ja vCenter Server (juhtimistarkvara). ESXi 5 eelkäiad olid ülesehitatud operatsioonisüsteemil Red Hat Enterprise Linux, kuid viies põlvkond töötab omal tuumal nimega VMkernel. [24] Lisaks virtuaalmasinahaldurile ja juhtimistarkvarale sisaldab vSphere veel mitmeid vahendeid, mis teevad serveri haldamise mugavamaks. Näiteks vMotion võimaldab tõsta töötavat virtuaalmasinat ühest füüsilisest serverist teisse ilma virtuaalmasinat peatamata ja Storage vMotion võimaldab tõsta töötava virtuaalmasina virtuaalketast füüsiliste salvestusseadmete vahel. Sõltuvalt litsentsist vSphere võib sisaldada vahendid, mis 12 automatiseerivad koormuse ühtlast jaotust: Distributed Resources Scheduler – füüsiliste serverite vahel ja Storage Distributed Resources Scheduler – salvestusseadmete vahel. [24] Erinevate vSphere toodete litsentse arvestatakse ühe füüsilise protsessori kohta, ehk kui serveris on kaks füüsilist protsessorit, siis tuleb osta kaks litsentsi. Samuti on olemas võimalus osta komplektina, mis sisaldab litsentsi tarkvarale vCenter ja kolmele füüsilisele serverile, igaühes kuni kaks füüsilist protsessorit. [25] Ülevaate vSphere toodete ja kompletide erinevusest annavad alloolevad tabelid. Standard Enterprise Enterprise Plus Komponendid ESXi, vMotion, Storage Eelmised ja Distributed Eelmised ja Distributed vMotion, High Resource Sheduler and Switch, Storage Availabilityand Fault Distributed Power Distributed Resource Tolerance, Data Management, Storage Sheduler, I/O Controls, protection and APIs for Array Host Profiles and Auto Replication, vShield Multipathing, Big Data Deploy, Flash Read Endpoint Extensions, Reliable Cache, App HA Memory Litsentsi hind, 894,50 2585,00 3145,00 EUR/1CPU Kohustuslik 245,51 543,18 660,09 tugi, EUR/aasta Laiendatud 290,47 646,60 785,99 tugi, EUR/aasta vCenter hind, Foundation 1345,00 + tugi: kohustuslik 490,12 / laiendatud: 580,05 EUR Standard 4495,00 + tugi: kohustuslik 943,37 / laiendatud: 1123,23 Väikseim kulu, 2975,13 5003,3 5640,21 EUR Tabel 5. VMware vSphere toodete võrdlus, hinnad käbemaksuta. 13 Essentials Kit Essentials Plus Kit Essentials Plus Kit with vSphere Storage Appliance Komponendid ESXi Eelmised ja vMotion, Eelmised ja Storage High Availability, Data vMotion protection and Replication, vShield Endpoint vCenter Essentials Litsentsi hind, 445,50 3105,00 3455,00 EUR/1CPU Kohustuslik 58,45 653,06 1160,84 tugi, EUR/aasta Laiendatud 268,50 777,58 1382,22 tugi, EUR/aasta Väikseim kulu, 503,95 3758,06 4615,84 EUR Tabel 6. VMware vSphere komplektide võrdlus, hinnad käibemaksuta. [24, 25] Virtualiseerimistarkvaral vSphere on sõltumata litsentsist kõrged võimalused: kuni 2 TB mälu, 160 protsessorit ja 512 virtuaalmasinat ühel füüsilisel serveril ning kuni 32 virtuaalset protsessorit ja 1 TB mälu ühel virtuaalmasinal. [24] 2.2.2. Microsoft Hyper-V Hyper-V on tarkvaratootja Microsoft arendatav virtualiseerimisplatvorm, mida on võimalik kasutada kolmel viisil [26]: 1. Iseseisva operatsioonisüsteemina (Windows Hyper-V Server 2008, 2008 R2, 2012 ja 2012 R2); 2. Windows Server 2008, 2008 R2, 2012 ja 2012 R2 rollina; 3. Windows 8/8.1 Professional või Enterprise täiendusena. Esmakordselt ilmus Hyper-V 2008. aastal ning terve aasta ulatuses täiendati toodet klientide tagasiside alusel. [26] Selle tulemusena ilmus 2009. aastal Hyper-V 2008 R2 versioon, millele 14 lisandusid näiteks Live Migration – võimalus töötava virtuaalmasina tõstmiseks ühest füüsilisest serverist teisse ilma esimest peatamata ja Dynamic Memory – võimalus eraldada virtuaalmasinale ainult nii palju mälu, kui see tegelikult kasutab. [26, 27] Kasutades toodet iseseisva operatsioonisüsteemina (Windows Hyper-V Server) puudub sellel graafiline kasutajaliides Windows Explorer ning toodet saab hallata järgnevatel viisidel: 1. kohalikust käsureast (PowerShell); 2. kaudselt kasutades tarkvarapaketi Remote Server Administration Tools vahendeid; 3. kasutades kolmanda tootja vahendeid (nt Corefig või 5nine Manager for Hyper-V). Kõik Microsoft Windows Hyper-V Server versioonid on tasuta ning nende paigaldusketastekujutised on saadavad tootja kodulehel. Operatsioonisüsteem Windows Server omab graafilist kasutjaliidest ning graafilisi haldusvahendeid Hyper-V jaoks, kuid ei ole tasuta toode. Allolev tabel annab ülevaate Windows Server 2012 R2 väljaannete erinevusest ja maksumustest. [28] Foundation Essentials Standard Datacenter Hyper-V võimalus puudub olemas olemas olemas Virtuaalkeskkondade 0 1 2 piiramata (VOSE) arv Litsentseerimise 15 kasutajat 25 kasutajat füüsiliste füüsiliste mudel protsessorite arv protsessorite arv ja CAL ja CAL Hind, USD OEM ainult 501 882 6155 Tabel 7. Microsoft Windows Server 2012 R2 väljaannete võrdlus. [28] Uuendatud Microsoft Hyper-V virtuaalmasinahaldur paistab silma oma kõrgete tehniliste võimalustega: kuni 320 loogilist protsessorit, 4 TB mälu ja 1024 aktiivset virtuaalmasinat ühel füüsilisel serveril ning 64 virtuualset protsessorit ja 1 TB mälu ühel virtuaalmasinal. [26, 28] 2.2.3. Citrix XenServer Citrix XenServer on iseseisev operatsioonisüsteem, mis töötab Linux tuumal ja sisaldab Xen virtuaalmasinahaldurit. Ettevõte XenSource, mis tegeles Xen arendusega, oli asutatud 2003. aastal Cambridge Ülikoolis Ian Pratt eestvedamisel ning 2007. aastal ostis Citrix XenSource koos tarkvara Xen kaubamärgiga. Virtuaalmasinahaldur Xen on alati olnud tasuta ja avatud lähtekoodiga, kuid sellele lisaks sisaldas XenServer tasulisi ja suletud lähtekoodiga 15 tööriistu. [29] Sarnaselt VMware vSphere tarkvaraga oli Citrix XenServer lahendusel mitu väljaannet, mis erinesid tasuliste tööristaade olemasolu poolest. Alates XenServer versioonist 6.2, mis ilmus 2013. aasta juunis, otsustas Citrix avada kõikide tasuliste vahendite lähtekoodi ja muuta need tasuvabaks. Tasuliseks on jäänud ööpäevaringne tugi, ligipääs teadmiste baasile ja mõned teised teenused. [30] Tarkvara XenServer on võimalik hallata nii käsurealt kui ka graafilise haldusvahendiga XenCenter, mis töötab Microsoft Windows keskkonnas. Tööriistale XenCenter on olemes mitmeplatvormilisi ning veebipõhiseid alternatiive. Viimane XenServer versioon on piiratud 160 loogilise protsessoriga, 1 TB mäluga ja 500 aktiivse virtuaalmasinaga ühel füüsilisel serveril ning 16 virtuaalse protsessori ja 128 GB mäluga ühel virtuaalmasinal. 2.3. Veebiserver Kahekümne esimese sajandi teistel aastakümnel on veebilehekülg muutunud ettevõtete visiitkaardiks. Palju on ka selliseid ettevõtteid, mille veebileht on peamine töökeskkond ja sidekanal klientidega. Veebilehe avamine nõuab mitme erineva teenuse sisseostu: materjalide koostamine, disainimine, programmeerimine ja majutamine, kusjuures viimane loetletutest on vajalik veebilehe terve tööaja ulatuses. Veebilehe majutamiseks on kaks peamist võimalust - avaliku majutusteenuse või sõltumatu (virtuaalse) serveri kasutamine. Kaasaegsetel veebimajutustel on head tingimused: mõistlikud ketta- ja andmesidemahud, mõnede skriptimiskeelde toed, andmebaasi, e-posti majutuse ja toiminguajasti võimalused ning madalad kuutasud. Samuti võivad veebimajutuse kasutamisel esineda mitmed probleemid: andmemahtude puudujääk, ressursside jagamine teiste kasutajatega, vajaliku lisatarkvara (näiteks PDF dokumentide loomiseks) ja erinevate võimaluste (näiteks turvasoklite kihiga kaitstud ühenduste) puudumine ning ligipääs tarkvarale ja andmetele teenusepakkujal. Eelnevalt nimetatud probleemid saab lahendada majutades veebilehe privaatsele serverile. Ettevõte Netcraft poolt 2014. aasta jaanuaris läbiviidud uuringu kohaselt jaguneb veebiserveri takvarade turuosad järgnevalt. 16 Arendaja Kõik leheküljed Aktiivsed leheküljed Suurima külastavusega Apache 41.64% 54.50% 55.45% Microsoft 29.49% 11.97% 12.66% Nginx 14.10% 11.61% 15.91% Google 2.27% 8.54% 3.03% Teised 12.50% 13.38% 12.95% Tabel 8. Veebiserveri tarkvarade turujaotus jaanuaris 2014. [31] Tabelis 8 väljatoodud ettevõtetest arendab kommertslahendusi Microsoft (IIS - Internet Information Services) ja Google (GWS - Google Web Server). Vaatamata sellele, et GWS on Apache edasiarendus, kasutatakse seda ainult ettevõttesiseselt. [32] Selliselt jääb ainsaks populaarseks kommertslahenduseks Microsoft IIS. 2.3.1. Microsoft Internet Information Services Microsoft IIS 1.0 ilmus täiendusena Windows NT 3.51 jaoks ning toetas selliseid teenuseid nagu HTTP, Gopher ja WAIS. Versioon 3.0 toetas skriptimiskeelt ASP 1.0, mis võimaldas luua dünaamilisi lehekülgi. Alates versioonist 5.0, mis ilmus operatsioonisüsteemiga Windows 2000, on IIS muutunud Windows komponendiks. [33] Internet Information Services versioonid 6.0 ja uuemad omavad tähtsat erinevust võrreldes enamike rivaalidega – IIS HTTP ühenduste kuular töötab operatsioonisüsteemi tuuma tasemel ja leiab aset TCP/IP protokollipinu kõrval. Nimetatud lähenemine arendaja väitel tagab suurema päringute töötlemise kiiruse ja tõstab veebiserveri stabiilsust. Lisaks on asendatud skriptimiskeel ASP raamistikuga ASP.NET, mis toetab mitmeid keeli nagu näiteks C#, J# ja VB.NET. [34] Alates IIS 8.0 on toetatud raamistik ASP.NET 4.5 ja lisandunud selliseid funktsioone nagu dünaamiline IP-aadressi blokeerimine ja arvutusjõudluse piiramine eraldi igale veebilehele. Samuti on toetatud ka CGI ja FastCGI liidesed, mis võimaldavad paigaldada teiste skriptimiskeelte (näiteks PHP ja Perl) tuge. [33] 2.4. E-postiserver Sarnaselt veebileheküljega omab igapäeva äritegevuses suurt tähtsust ka elektronpost. Kõige lihtsam viis e-posti aadressi saamiseks on registreerida see mõnes avalikus e-postiteenuses. Juhul, kui ettevõte soovib saada vähemalt ühte e-posti aadressi omalt poolt valitud domeeninimega, tuleb osta e-posti majutusteenust. Selleks, et välistada ligipääs kirjadele 17 kolmandatel isikutel, kasutada ettevõtesiseseid autentimismehhanisme, kehtestada erilisi saatmis- ja vastuvõtmisreegleid ning korraldada tingimuslike suunamisi on lahehenduseks kasutada privaatset e-postiserverit. Ettevõtte Cybercom poolt 2013. aasta jooksul läbiviidud uuringu kohaselt jagunevad teenuste SMTP ja IMAP serveritarkvara turuosad järgnevalt. SMTP IMAP Nimetus Turuosa Nimetus Turuosa Postfix 25,79% Dovecot 52,87% Exim 23,28% Courier 27,14% (tundmatu) 10,92% Exchange 2,96% Qmail 9,26% IdeaImapServer 2,87% PowerMTA 8,89% UW-IMAP 2,32% Exchange 8,19% NetArt 1,56% Sendmail 5.30% MailEnable 1,43% MailEnable 1,85% Cyrus 1,02% IdeaSmtpServer 1,69% Zimbra 0,81% Cisco Ironport 0,84% hMailServer 0,79% Tabel 9. SMTP ja IMAP teenuste servertarkvara jaotus aastal 2013. [35] Tabelist 9 on näha, et üle poole nii SMTP kui ka IMAP serveritest on loodud avatud lähtekoodiga tarkvaral. Vaatamata sellele on kasulik vaadelda ka kommertslahendusi nagu Microsoft Exchange Server. 2.4.1. Microsoft Exchange Server Arendades tarkvara Exchange 2010 seadis Microsoft järgmised eesmärgid: suurendada toote paindlikust ja stabiilsust, lihtsustada selle haldamist ning opereerida 10 GB suuruste postkastidega sama kiiresti kui Exchange 2007 opereeris 1 GB postkastidega. Samuti on muudetud tarkvara struktuuri – tagaserver Store vastutab andmete säilivuse eest ja eesserver Client Access Server töötleb kasutajate päringuid. Mõlemad saavad töötada ühel ja samal operatsioonisüsteemil. [36, 37] Exchange 2013 arendusel lisandusid uued eesmärgid [37]: • toetada kasutajaid erinevatest põlvkondadest (esimene põlvkond alustas elektronposti kasutamist 1980ndatel, kuid tänapäeval alustanud põlvkonnal on teised ootused teenuselt); 18 • lihtsustada üleminek uuele veersioonile kasutajatel, kes on harjunud töötama vanemate versioonidega; • täiustada ühilduvust toodetega Microsoft SharePoint 2013 ja Microsoft Lync 2013; • järgida kasutjate vajadusi eelmistest versioonidest saadud kogemuste põhjal ja investeerida funktsioonidesse proportsionaalselt kasutajate huviga; • tagada ühildavus Store ja Client Access Server erinevate versioonide vahel. Erinevalt viimastest eelkäiatest Microsoft Exchange Server 2013 on saadaval kahes väljaandes: Standard ja Enterprise. Standart väljaanne on odavam, suunatud väikse arvuga postkastidega ettevõtetele, sisaldab kõiki e-postiserveri funktsioone ja selle postkastiandmebaaside arv on piiratud viiega. Väljaanne Enterprise võimaldab kasutada kuni 100 postkastiandmebaasi, mis on ka ainus erinevus Standart väljaandest. Exchange 2013 on võimalik paigaldada operatsioonisüsteemidele Windows Server 2008 R2 ja Windows Server 2012. Alates Exchange 2000 versioonist on vajalik töötav Active Directory teenus. Exchange 2013 võib töötada koos kataloogiteenusega Active Directory ühel ja samal operatsioonisüsteemil, kuigi jõudluse ja turvalisuse eesmärgil arendaja soovitab seda vältida. [37] 2.5. Kodukeskjaam Sidevahendid tõstavad tööjõu effektiivsust ettevõtetes ja telefoniside on olnud üle sajandi tähtis sidevahend. Viimastel aastakümnetel on muutunud populaarseks telefoniside kasutamine üle IP andmesidevõrkude, kuna see tõstab konfiguratsioonivõimalusi ja mobiilsust nii kasutajatel kui ka teenusepakkujatel. Paljudel ettevõtetel on olemas klienditoe telefon. Ei ole haruldane, kui kliendid soovivad suhelda mitme erineva osakonnaga, näiteks müügiosakond, arveldusosakond ja tehnílise toe osakond, kusjuures igas osakonnas võib olla mitu klienditeenindajat, kes vastavad kõnedele. Sellises olukorras tekib vajadus jaotada sissetulevaid telefonikõnesid nii osakondade kui ka nendes töötavate inimeste vahel ettevõttes kehtestatud reeglite järgi. Lisaks on tihti olemas soov pidada arvestust nii sissetulevate ja väljaminevate kõnede järel kui ka salvestada neid. Eelnevalt nimetatud ülesannete lahendamiseks kasutatakse kodukeskjaamu ehk PBX (private branch exchange). Kodukeskjaama saab sisseosta teenusena, paigaldada riistvaralise 19 seadmena või seadistada tarkvaralise lahendusena. Järgnevas alampeatükis vaadelakse tarkvaralist kommertslahendust 3CX Phone System. 2.5.1. 3CX Phone System 3CX Phone System oli üks esimestest tarkvaralistest lahendustest, mis töötas operatsioonisüsteemi Windows keskkonnas. Tarkvara arendaja positsioneerib oma toodet kui lihtsat ja mugavat lahendust ning lubab, et selle paigaldamisega ja seadistamisega saavad hakkama kõik, kes omavad algteadmisi võrgutehnoloogias. Tarkvara koosneb järgmistest komponentidest [38]: • 3CX Phone System koosneb mitmest Windows-i teenusest nagu näiteks andmebaas, SIP/RTP proksi, faks-teenus, kõneposti teenus, konverentskõnede teenus ja teised; • 3CX Assistant võimaldab jälgida hetkeseisu ja seadistada tarkvara; • 3CX Call Reporter lubab koostada statistikat raportite ja graafikute kujul; • 3CX WebServer on veebiserver, mille abil töötab veebiliides. 3CX Phone System on saadaval kolmes väljaandes – Free, Standard ja Pro. Free väljaanne on täiesti tasuta ja sisaldab järgmisi piiranguid: kuni kahte samaaegset kõnet, konverentskõnede keeld, kõnede salvestuse keeld ja mitmed teised piirangud. Tasuliste väljaannete hind sõltub lubatud samaaegsetest kõnede arvust. Täpsema ülevaate annab allolev tabel. Samaaegsete kõnede arv Standard väljaande hind Pro väljaande hind 4 395 535 8 750 1015 16 1095 1480 32 1950 2630 64 3895 5260 128 6995 9440 256 11995 16195 512 19995 26995 1024 34995 47245 Tabel 10. 3CX Phone System väljaannete hinnad eurodes. [39] 3CX Phone System Pro väljaanne sisaldab erinevaid vahendeid, mis teevad klientidega töö mugavamaks ka väiksematel ettevõtetel. Näiteks on võimalik integratsioon Microsoft Exchange lahendusega, mille tulemusel otsitakse kataloogist klientide nimesid telefoninumbri 20 järgi. Kõnejärjekordade võimalus on olemas ainult Pro väljaandel ja sellel on palju valiku võimalusi – vastaja valik võib olla juhuslik, järjestikune, vähima kõneaja järgi, vähima vastatud kõnede arvu järgi või pikema ooteaja järgi. [38, 40] 21 3. LAHENDUSED AVATUD LÄHTEKOODIGA TARKVARA NÄITEL 3.1. Marsruutimine Tänu interneti püsiühenduse levikule on olemas lai valik nii tarkvara kui ka riistvara, mis võimaldab lahendada internetiühenduse jagamisega seotud probleeme. Tarkvara saab olla nii avatud kui ka suletud lähtekoodiga, riistvara aga nii spetsialiseeritud kui ka üldotstarbeline. Marsruutimise ülesannete lahendamiseks mõeldud avatud lähtekoodiga operatsioonisüsteemid on võimalik jagada kaheks: eriotstarbelised ja üldotstarbelised distributsioonid. Eriotstarbelised distributsioonid sisaldavad eelnevalt paigaldatud ja seadistatud tarkvara (näiteks DHCP ja DNS serverid, erinevad VPN standardid ja statistika kogumise vahendid) ning graafilist kasutajaliidest, mis on tihti veebipõhine. Tuntumad näited on DD-WRT ja OpenWRT (Linux-põhised) ning m0n0wall ja pfSense (FreeBSD-põhised). Paljudel distributsioonidel on olemas paketihaldur, mis erilahenduse vajadusel võimaldab kiirelt ja mugavalt paigaldada vajalikku tarkvara. Üldotstarbelise operatsioonisüsteemi kasutamiseks valitakse tavaliselt sellised distributsioonid, mida on võimalik paigaldada minimaalse tarkvarapaketide arvuga (näiteks ilma graafilise kasutajaliideseta ega kompilaatorita). Populaarsemad distributsioonid on Debian GNU/Linux, CentOS ja FreeBSD. Sõltuvalt vajadustest paigaldatakse vajalikud tarkvarapaketid, näiteks võrgusildade tugi, VLAN tugi ning VPN ja muud teenused, mille seadistamine teostatakse muutes parameetreid konfiguratsioonifailides. 3.1.1. Marsruutimisprotokollid Suurema seadmete arvuga võrke on mõistlik jaotada alamvõrkudeks kasvõi levikupiirkonna vähendamise eesmärgil. Tulemusena tekib mitu alamvõrku, mille marsruutidest peavad olema teavitatud kõik marsruuterid. Väiksema arvu alamvõrkude korral saab seadistada kõiki marsruutereid käsitsi, suurema arvu korral on kasulik kasutada marsruutimisprotokolle. Ülevaate kolme tarkvarapaketi BIRD, Quagga ja XORP marsruutimisprotokollide toest annab järgnev tabel. 22 Protokoll BIRD Quagga XORP BFG (tehnoloogia) jah jah ei BGP jah jah jah ISIS ei jah ei MPLS (tehnoloogia) ei jah ei OSPFv2 jah jah jah OSPFv3 (IPv6) jah jah jah RIPv1 ei jah ei RIPv2 jah jah jah RIPng (IPv6) jah jah jah Tabel 10. BIRD, Quagga ja XORP marsruutimisprotokollide tugi [41, 42, 43]. 3.1.2. Läbilaskevõime hindamine SSL-tüüpi virtuaalsetes privaatvõrkudes (VPN) Sageli valitakse marsruuteriks spetsialiseeritud kommertslahendus põhjusel, kuna see sisaldab riistvaralist krüpteerimisseadet, mis tõstab krüpteeritud ühendustel läbilaskevõimet. Vaatamata sellele nii kaasaegsed üldotstarbelised protsessorid kui ka nende energiasäästlikud versioonid suudavad konkureerida kommertsruuteritele nii läbilaskevõimekt kui ka hinnalt. Järgnevad katsed on tehtud tingimustes, kus 10.10.0.0/24 ja 10.255.0.0/30 on füüsilised kohtvõrgud, mille vahele on paigaldatud marsruuter (mõlemad võrgud ühendatud eraldi 1 Gbps võrguliidestega). Võrgu 10.255.0.0/30 kaudu on tekitatud VPN (OpenVPN abil, UDP põhiselt), mille aadressiruum on 192.168.0.0/24. Marsruuter on seadistatud üldotstarbelisel arvutil, mille keskprotsessor on Intel Atom D2500 (taktsagedus 1.86 GHz, kaks füüsilist tuuma ja kokku kaks loogilist tuuma, 10 W nõutav jahutusvõimsus, 2011. aasta tehnoloogia) ja selle hind on vähem kui 150 eurot. Läbilaskevõimet mõõdetud vahendiga netio ja lisaks on märgitud ka keskmine keskprotsessori koormus marsruuteril katse ajal. Kokku on tehtud seitse katset, kõik võrgust 10.10.0.0/24, vaadeldud ka erinevaid pakettide suurusi ning saatmine/krüpteerimine (↑) ja vastuvõtt/dekrüpteerimine (↓) eraldi: 1. otseside marsruuteriga võrgus 10.10.0.0/24; 2. marsruutimine võrku 10.255.0.0/30; 3. marsruutimine ja võrguaadressi transleerimine (NAT) võrku 10.255.0.0/30; 4. marsruutimine VPN võrku 192.168.0.0/24 Blowfish-CBC krüpteeringuga; 5. marsruutimine VPN võrku 192.168.0.0/24 AES-128-CBC krüpteeringuga; 6. marsruutimine VPN võrku 192.168.0.0/24 AES-256-CBC krüpteeringuga; 7. marsruutimine VPN võrku 192.168.0.0/24 DES-EDE3-CBC krüpteeringuga. 23 1 KB 2 KB 4 KB 8 KB 16 KB 32 KB CPU paketid paketid paketid paketid paketid paketid koormus ↑110.32 ↑110.71 ↑110.10 ↑110.64 ↑110.69 ↑110.48 Otseside ~8% ↓82.70 ↓86.91 ↓111.91 ↓112.06 ↓112.00 ↓112.01 ↑96.95 ↑97.34 ↑97.84 ↑97.58 ↑97.70 ↑98.51 Marsruutimine ~2% ↓96.95 ↓95.59 ↓95.93 ↓95.55 ↓95.83 ↓97.46 Marsruutimine ↑96.38 ↑97.27 ↑97.14 ↑97.35 ↑97.17 ↑97.90 ~6% ja NAT ↓94.85 ↓95.22 ↓95.30 ↓95.97 ↓95.51 ↓96.92 Marsruutimine ↑12.94 ↑11.85 ↑12.16 ↑12.26 ↑12.26 ↑12.30 ja VPN ~50% ↓64.15 ↓65.48 ↓65.16 ↓64.32 ↓65.35 ↓63.87 Blowfish 128 bit Marsruutimine ↑11.66 ↑10.36 ↑10.57 ↑10.55 ↑10.55 ↑10.56 ja VPN ~50% ↓63.73 ↓65.37 ↓65.98 ↓65.76 ↓65.46 ↓63.88 AES 128 bit Marsruutimine ↑10.36 ↑9.10 ↑9.27 ↑9.27 ↑9.25 ↑9.29 ja VPN ~50% ↓64.55 ↓64.52 ↓64.70 ↓66.10 ↓66.05 ↓64.01 AES 256 bit Marsruutimine ↑5.71 ↑4.66 ↑4.71 ↑4.70 ↑4.71 ↑4.71 ja VPN ~50% ↓61.44 ↓60.16 ↓59.47 ↓59.15 ↓59.67 ↓58.46 3DES 192 bit Tabel 12. Intel Atom D2500 võrguliikluse läbilaskevõime megabaitides sekundis. Tabelist 12 on näha, et marsruutimise kiirused, sealhulgas koos võrguaadressi transleerimisega, lähenevad võrguliidese kiirusele ja keskprotsessori kasutavus on minimaalne. Otseside korral on keskprotsessori koormus suurem, sest ainult selles katses käivitati netio vahendi kuular just marsruuteril (teistes katsetes võrkudes 10.255.0.0/30 ja 192.168.0.0/24), mis vajab jõudlust võrguliikluse tekitamiseks ja mõõtmiseks. Krüpteeritud ühenduste korral on näha, et krüpteerimine nõuab 5-10 korda rohkem jõudlust kui dekrüpteerimine. Ligi 50 protsendine keskprotsessori koormus on seotud sellega, et OpenVPN kasutab ainult ühte keskprotsessori tuuma. OpenVPN toetab kõiki riistvaralisi krüpteerimisseadmeid, mida toetab OpenSSL - seega on võimalik ka energiasäästliku protsessoriga marsruuteri abil luua suurema läbilaskevõimega krüpteeritud virtuaalseid privaatvõrke. 24 3.1.3. Näiteid Debian GNU/Linux distributsioonil 3.1.3.1. Virtuaalkohtvõrkude, virtuaalvõrguliideste ja võrgusildade haldamine Virtuaalkohtvõrgutehnoloogia ehk VLAN, mis tugineb protokollil 802.1Q, võimaldab loogiliselt jagada ühte füüsilist võrku mitmeks virtuaalseks. Nimetatud tehnoloogia kasutamise peamised põhjused on ARP-pakettide levikupiirkonna vähendamine ja üldise turvalisuse tõstmine. Samuti võimaldab VLAN tehnoloogia hoida kokku füüsiliste ühenduste ja võrguseadmete peal. Näiteks võib tuua olukorda, kui on olemas VLAN tehnoloogiat toetav hallatav kommutaator ja on vaja seadistada marsruuter riistvaral, millel on ainult üks võrguliides. Olgu võrguliidese nimetus eth0 ja laivõrgule eraldatud virtuaalkohtvõrgu ID on 10. Virtuaalkohtvõrkude haldamiseks on vaja paigaldada pakett vlan [44]. vconfig add eth0 10 Näide 1. Virtuaalkohtuvõrgu lisamine käsurealt [44]. Virtuaalvõrguliideseid kasutatakse peamiselt virtuaalsetes privaatvõrkudes ehk VPN. UNIX'i- laadsetes operatsioonisüsteemides esineb kaks virtuaalvõrguliidest: TUN (marsruuditud võrkudeks) ja TAP (sillatud võrkudeks). Olukorras, kui on vaja ehitada kahte OSI mudeli teise kihi VPN-i sise- ja välisvõrguga, kasutatakse vahendit tunctl virtuaalvõrguliideste tap0 ja tap1 loomiseks. Virtuaalvõrguliideste seadistamiseks on vaja paigaldada pakett uml-utilities. tunctl -t tap0 tunctl -t tap1 Näide 2. OSI mudeli teise kihi virtuaalvõrguliideste lisamine käsurealt [45]. Lisaks võrkude ühendamisele võimaldab sildade kasutamine lihtsustada marsruuteri konfiguratsiooni. Tavaliselt sillatakse traadiga ja traadita sisevõrguliideseid, kuid silda saab kasutada ka laivõrgu liidestel, mis tekitab vabaduse vahetada võrguliideseid silla sees ilma muu tarkvara konfiguratsiooni muutmata. Selliselt olgu br0 sisevõrgu 10.10.0.0/24 sild ja br1 laivõrgu 213.180.31.64/28 sild, kurjuures sillaga br0 on ühendatud kohtvõrguliides eth0 ja virtuaalliides tap0 ning sillaga br1 on ühendatud kohtvõrguliides eth0 virtuaalkohtvõrguga 10 ja virtuaalliides tap1 (Näide 3). Võrgusildade kasutamiseks on vaja paigaldada pakett birge- utils. 25 brctl add br0 brctl addif br0 eth0 brctl addif br0 tap0 ifconfig br0 213.180.31.77/28 up brctl add br1 brctl addif br1 eth0.10 brctl addif br1 tap1 ifconfig br0 10.10.0.1/24 up Näide 3. Võrgusildade lisamine ja seadistamine käsurealt [46]. Distributsioonis Debian GNU/Linux on võimalik kõik eelnevalt sisestatud parameetrid kirjeldada konfiguratsioonifailis /etc/network/interfaces järgmisel kujul. auto eth0 iface eth0 inet manual iface eth0.10 inet manual vlan_raw_device eth0 auto tap0 iface tap0 inet manual pre-up tunctl -t tap0 up ifconfig tap0 up down ifconfig tap0 down auto tap1 iface tap1 inet manual pre-up tunctl -t tap1 up ifconfig tap1 up down ifconfig tap1 down auto br0 iface br0 inet static address 10.10.0.1 netmask 255.255.255.0 bridge_ports eth0 tap0 auto br1 iface br1 inet static address 213.180.31.77 netmask 255.255.255.240 gateway 213.180.31.65 bridge_ports eth0.10 tap1 Näide 4. Virtuaalkohtuvõrkude, virtuaalvõrguliideste ja sildade konfiguratsioon failis /etc/network/interfaces [44, 45, 46]. 3.1.3.2. Võrguliikluse suunamine liideste vahel, tulemüür ja NAT Iga marsruuteri peamine ülesanne on suunata võrguliiklust erinevate liideste vahel, olgu need füüsilised või virtuaalsed. Selleks tuleb muuta vastav operatsioonisüsteemi tuuma parameeter ja kirje konfiguratsioonifailis. sysctl net.ipv4.ip_forward=1 sed -i '/net.ipv4.ip_forward/c\net.ipv4.ip_forward=1' /etc/sysctl.conf Näide 5. Võrguliikluse suunamise lubamine käsurealt ja konfiguratsioonifailis [47]. Võrguliikluse piiramist (tulemüür), suunamist ja transleerimist (NAT) seadistab iptables nimeline vahend. Järgnevaga lubame sissetulevad ühendused ainult TCP pordile 22 (SSH teenus) ja keelame suunatavad paketid portide vahemikus 6881-6889 (Näide 6). 26 iptables -A INPUT -p tcp --dport 22 -j ACCEPT iptables -P INPUT DROP iptables -A FORWARD -p tcp --dport 6881:6889 -j DROP Näide 6. Kõikide sissetulevate ühenduste keelamine välja arvatud SSH ja suunatavate pakettide keelamine TCP portide vahemikus 6881-6889 [48]. Eeldusel, et välise silla br1 IP aadress on 213.180.31.77 ja sild br0 on ühendatud sisevõrguga 10.10.0.0/24, lubame sisevõrgus NAT-i, suuname TCP pordi 25 aadressile 10.10.0.104 ning suuname veebiliikluse sisevõrgust kohalikule TCP pordile 3128, millel võiks töötada HTTP proksi. iptables -t nat -A POSTROUTING -s 10.10.0.0/24 -o br1 -j SNAT --to-source 213.180.31.77 iptables -t nat -A PREROUTING -d 213.180.31.77/32 -p tcp -m tcp --dport 25 -j DNAT --to-destination 10.10.0.104:25 iptables -t nat -A PREROUTING -s 10.10.0.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128 Näide 7. NAT lubamine, SMTP teenuse suunamine sisevõrgu aadressile ja veebiliikluse suunamine veebiproksile [48]. Eelnevalt sisestatud iptables parameetrid tühistuvad taaskäivitusel ning nende salvestamiseks ja taastamiseks on olemas vahendid iptables-save ja iptables-restore vastavalt. Parameetrite salvestamiseks sisestame järgneva käsu. iptables-save > /etc/iptables.conf Näide 8. Iptables parameetrite salvestamine konfiguratsioonifaili [49]. Eelnevalt salvestatud parameetrite taastamiseks saab sisestada järgneva käsu või seadistada see automaatselt käivitatava skriptina. iptables-restore < /etc/iptables.conf Näide 9. Iptables parameetrite taastamine konfiguratsioonifailist [49]. 3.1.3.3. Nimeserver (DNS) Kohaliku nimeserveri kasutamisel on mitmeid eeliseid: vastused sellelt on kiiremad, selle abil on võimalik jälgida tehtud nimepäringuid, keelata domeene, muuta nimedele vastavaid aadresse ja seadistada vahemälu kasutamise reegleid. UNIX'i-laadsetel operatsioonisüsteemidel populaarseim nimeservertarkvara on BIND, mille 9. versiooni saab paigaldada operatsioonisüsteemile Debian GNU/Linux paketiga bind9. Lahendus on kasutatav ka vaikimisi seadetega. Olukorras, kus on vaja muuta kohalikele kasutajatele domeeninimele d-sys.org vastavaid IP-aadresse (näiteks suunata päringud e-postiserverile mail.d-sys.org sisevõrgu IP-aadressile) lisatakse järgmised read konfiguratsioonifaili /etc/bind/named.conf.local eeldusel, et /etc/bind/zones/d-sys.org-local.db on eelnevalt seadistatud tsoonifail. 27 acl "local" { 127.0.0.1; 10.10.0.0/24; }; zone "d-sys.org" { type master; file "/etc/bind/zones/d-sys.org-local.db"; allow-query { local; }; }; Näide 10. Ainult sisevõrgust kättesaadava tsooni lisamine nimeservertarkvaras BIND [50]. 3.1.3.4. Dünaamilise hostikonfiguratsiooni protokoll (DHCP) Suure tõenäosusega on vaja sisevõrgus jagada IP-aadresse, kusjuures mõnedele seadetele staatilisi, teistele dünaamilisi. Probleemi lahendamiseks aastaid tõestanud ennast ISC DHCP Server, mida on võimalik paigaldada paketiga isc-dhcp-server. Sisevõrgu 10.10.0.0/24 jaoks sobib järgmine näide, milles e-postiserverile on antud staatiline IP ja on loodud dünaamiliste IP aadressite vahemik. ddns-update-style none; default-lease-time 3600; max-lease-time 7200; authoritative; subnet 10.10.0.0 netmask 255.255.255.240 { option routers 10.10.0.1; option domain-name-servers 10.10.0.1; option domain-name "ds.local"; group { host mail { hardware ethernet 00:1A:2B:3C:4D:5E; fixed-address 10.10.0.104; } } pool { allow unknown-clients; range 10.10.0.151 10.10.0.250; } } Näide 11. Tarkvara ISC DHCP Server konfiguratsioon, milles esineb üks staatiline kirje ja dünaamiliste IP- aadressite vahemik [51]. 3.2. Riistvara virtualiseerimine Alates riistavara virtualiseerimise toega x86 arhitektuuril protsessorite turule tulekust on loodud mitmeid nii tasulisi kui ka avatud lähtekoodiga vahendeid, mille abil on võimalik lahendada riistvara virtualiseerimisega seotud probleeme. Tasulise tarkvara tootjad on positsioneerinud oma lahendusi kui mugavalt hallatavaid, töökindlaid ja paljude lisavõimalustega. Kuigi avatud lähtekoodiga lahendustele on raske omistada turuliidrite positsioone, nende arengus on toimunud märkimisväärseid edusamme. Avatud lähtekoodiga riistavara virtualiseerimise serveritele mõeldud lahendusi jagatakse kaheks üksteisest sõltumaks komponendiks: virtuaalmasinahaldur ja juhtimistarkvara. Tuntumad virtuaalmasinahaldurid on KVM ja Xen, populaarsemad juhtimistarkvarad on Libvirt ja oVirt. 28 3.2.1. KVM KVM (Kernel-based Virtual Machine) on hüperviisor, mis koosneb täiendusest Linux tuumale (annab ligipääsu virtualiseerimisressursidele operatsioonisüsteemi kasutajaruumist) ja rakendusest (täiendatud QEMU emulaator, millele on lisatud x86 virtualiseerimistehnoloogia tugi). KVM arendust alustas ettevõte Qumranet ja esimene väljalase ilmus aastal 2007 koos Linux versiooniga 2.6.20. Aastal 2008 ostis RedHat Qumranet koos projektiga KVM [52]. KVM suudab emuleerida erinevat riistvara [53]: • protsessoreid (alates Intel 486 kuni Sandy Bridge mikroarhitektuurini); • kettakontrollereid (IDE, AHCI, SCSI); • graafikaadaptereid (Cirrus Logic GD5446, VGA koos VBE-ga ja VMWare SVGA-II); • võrguadaptereid (NE2000 PCI, Intel PRO/100 ja PRO/1000 seeriad, Realtek RTL8139, AMD Am79C970A); • helikaarte (Creative Sound Blaster 16, Crystal CS4231A, Yamaha YM3812, Gravis Ultrasound GF1, Intel 82801AA AC97 Audio, ENSONIQ AudioPCI ES1370, Intel HD Audio); • USB (UHCI, EHCI, jaotur ja mitmed seadmed); • jada- ja rööpporte. Samuti toetab KVM järgmisi kettakujutisvorminguid [53]: • toorandmed; • kohalike kettaid – kõvakettaid, optilisi ja floppi kettaid; • cow, qcow ja qcow2 – copy-on-write erinevaid versioone; • vdi – Tarkvara VirtualBox kettakujutisvormingut; • vmdk – VMWare toodetes kasutatav kettakujutisvormingut; • vpc – Microsoft VirtualPC kettakujutisvormingut; • parallels – Parallels toodete kettakujutisvormingut; • Bochs emulaatori kettakujutisvormingut; • iSCSI tüüpi võrguressursse. • erinevaid võrguprotokolle (TFTP, FTP, FTPS, HTTP, HTTPS) Kuna virtuaalmasinahaldur toetab kettakujutist toorandmete kujul, siis on lihtne muuta füüsilisi masinaid virtuaalseteks (P2V) ja vastupidi (V2P), lisaks on kerge monteerida kettakujutistes olevaid partitsioone kohalikku tööpunkti. Sõltumata kettakujutise vormingust 29 on võimalik hoida seda kolmel erineval tasemel: failina failisüsteemil, füüsilise ketta jaotusel või otse füüsilisel kettal. KVM ei sisalda vahendeid, mis automatiseeriks käivitust ega haldust, seega käivitatakse virtuaalmasinad käsurealt andes ette parameetritena virtuaalse riistvara konfiguratsiooni (näide 12). /usr/bin/kvm -S -M pc-1.1 -enable-kvm -m 256 -smp 1,sockets=1,cores=1,threads=1 -name MAIL \ -uuid f5b8c05b-9c7a-3211-49b9-2bd635ea0004 -no-user-config -nodefaults \ -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/MAIL.monitor,server,nowait \ -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime -no-shutdown -boot order=c,menu=on \ -device ahci,id=ahci0,bus=pci.0,addr=0x9 -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 \ -drive file=/data/vm/mail.img,if=none,id=drive-sata0-0-0,format=raw \ -device ide-hd,bus=ahci0.0,drive=drive-sata0-0-0,id=sata0-0-0 \ -drive if=none,id=drive-ide0-1-0,readonly=on,format=raw \ -device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 \ -netdev tap,fd=20,id=hostnet0 -device e1000,netdev=hostnet0,id=net0,mac=ea:00:00:00:00:04,bus=pci.0,addr=0x3 \ -vnc 0.0.0.0:4,password -vga cirrus -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x8 Näide 12. Virtuaalmasina koos virtuaalse riistvara konfiguratsiooniga käivitamine KVM abil käsurealt [53]. Töötavaid virtuaalmasinaid on võimalik hallata (peatada, taaskäivitada, muuta virtuaalse riistavara konfiguratsiooni) läbi virtuaalse terminali, kuid lihtsam ja efektiivsem on kasutada haldustarkvara. 3.2.2. Haldustarkvara libvirt Tarkvarakogu libvirt on hüperviisorite haldustarkvara, mis koosneb järgmistest komponentidest: API teegid, teenus libvirtd ja käsurida virsh. Tarkvara arendus algas aastal 2005 ettevõte RedHat initsiatiivil ning peamine eesmärk oli luua vahend, mis võimaldaks juhtida erinevaid virtuaalmasinahaldureid ühiste käskudega. Versioon 1.2.2 toetab järgmisi hüperviisoreid, emulaatoreid [54]: • KVM ja QEMU; • Xen; • LXC (Linux operatsioonisüsteemi virtualiseerimine); • OpenVZ (Linux operatsioonisüsteemi virtualiseerimine); • User-mode Linux (Linux operatsioonisüsteemi virtualiseerimine); • Oracle VirtualBox; • VMware GSX, ESX, ESXi, Workstation, ja Player; • Microsoft Hyper-V; • IBM PowerVM; • Parallels; • Bhyve. 30 Tarkvara libvirt toetab kasutajaõiguste määramist ja autentimismehhanisme Kerberos ja SASL [55]. Virtuaalmasinate konfiguratsiooni salvestatakse XML-vormingus failide kujul (Näide 13). MAIL f5b8c05b-9c7a-3211-49b9-2bd635ea0004 262144 262144 1 hvm destroy restart destroy /usr/bin/kvm