User:Kkapp/ITSPEA: Difference between revisions

From ICO wiki
Jump to navigationJump to search
(Created page with "Keijo Kapp IT süsteemide arendus 2016 RangeForce küberlaborite süsteem = Essee = == Sissejuhatus == See wiki leht annab põhimõttelise ülevaate RangeForce poolt arenda...")
 
No edit summary
Line 5: Line 5:


= Essee =
= Essee =
== Sissejuhatus ==


See wiki leht annab põhimõttelise ülevaate RangeForce poolt arendatavast<br />
##Sissejuhatus
küberlaborite platvormist. Mõistagi ei kirjelda see kõiki ettevõtte ja<br />
 
See wiki leht annab põhimõttelise ülevaate RangeForce poolt arendatavast
küberlaborite platvormist. Mõistagi ei kirjelda see kõiki ettevõtte ja
platvormiga seotud aspekte.
platvormiga seotud aspekte.


== Ülevaade ==
##Ülevaade


[https://rangeforce.com RangeForce] on 2014 aastal loodud Eesti idufirma.<br />
[RangeForce](https://rangeforce.com) on 2014 aastal loodud Eesti idufirma.
Ettevõtte peamiseks produktiks on virtuaalsete küberlaborite süsteem, millega IT<br />
Ettevõtte peamiseks produktiks on virtuaalsete küberlaborite süsteem, millega IT
töötajaid ja huvilisi treenida läbi praktilise ja mängulise keskkonna. See on<br />
töötajaid ja huvilisi treenida läbi praktilise ja mängulise keskkonna. See on
uuenduslik alternatiiv klassikalistele koolitustele ning võib potensiaalselt<br />
uuenduslik alternatiiv klassikalistele koolitustele ning võib potensiaalselt
muuta IT õpetamise meetodeid.
muuta IT õpetamise meetodeid.


Platvormiga proovitakse adresseerida mitmeid probleeme, mis kaasnevad tavaliste<br />
Platvormiga proovitakse adresseerida mitmeid probleeme, mis kaasnevad tavaliste
koolitustega. Ühe näitena tuua suutmatuse täpselt ja/või adekvaatselt mõõta<br />
koolitustega. Ühe näitena tuua suutmatuse täpselt ja/või adekvaatselt mõõta
koolituse tulemust. RangeForce platvorm suudab hinnata osaleja tegevusi ning<br />
koolituse tulemust. RangeForce platvorm suudab hinnata osaleja tegevusi ning
kulunud aega ja reageerida vastavalt. Teiseks muudab see platvorm koolitused<br />
kulunud aega ja reageerida vastavalt. Teiseks muudab see platvorm koolitused
tunduvalt huvitavamateks ja seega ilmselt efektiivsemateks. Kuna laborimissiooni<br />
tunduvalt huvitavamateks ja seega ilmselt efektiivsemateks. Kuna laborimissiooni
läbimiseks peavad kasutajad praktilises keskkonnas läbi mängima kogu labori<br />
läbimiseks peavad kasutajad praktilises keskkonnas läbi mängima kogu labori
materjali (ründed jms.), jääb materjal paremini meelde ning kasutajal on suurem<br />
materjali (ründed jms.), jääb materjal paremini meelde ning kasutajal on suurem
potensiaal tulevikus vastavaid olukordi ära tunda ja õigesti käituda.
potensiaal tulevikus vastavaid olukordi ära tunda ja õigesti käituda.


Ettevõtte kliendisihtgrupp on suurettevõtted, kus on arvestatav IT<br />
Ettevõtte kliendisihtgrupp on suurettevõtted, kus on arvestatav IT
administreerimisele või arendamisele spetsialiseerunud seltskond. Kohati on<br />
administreerimisele või arendamisele spetsialiseerunud seltskond. Kohati on
raske sellistel ettevõtetel kontrollida ja tagada reaalne küberturbealane<br />
raske sellistel ettevõtetel kontrollida ja tagada reaalne küberturbealane
kompetents kõigile oma IT töötajatele. Tavapärasele koolitusele saatmine on<br />
kompetents kõigile oma IT töötajatele. Tavapärasele koolitusele saatmine on
finantsiliselt koormav ning koolituse tulemust ja kvaliteeti ei saa adekvaatselt<br />
finantsiliselt koormav ning koolituse tulemust ja kvaliteeti ei saa adekvaatselt
tegelikult mõõta. Koolitusele saadetavate isikute tase võib olla väga erinev<br />
tegelikult mõõta. Koolitusele saadetavate isikute tase võib olla väga erinev
ning suurele osale võib koolitus olla liigse keerukuse või lihtsuse tõttu<br />
ning suurele osale võib koolitus olla liigse keerukuse või lihtsuse tõttu
väheefektiivne.
väheefektiivne.


Meie visioon on muuta nii elementaarsed kui ka mitmed keerulisemad<br />
Meie visioon on muuta nii elementaarsed kui ka mitmed keerulisemad
küberkaitseoskused IT inimestele nii enesestmõistetavaks, et me teeksime<br />
küberkaitseoskused IT inimestele nii enesestmõistetavaks, et me teeksime
vähem rumalaid vigu. Veel kaasaegsetest süsteemidestki on leitud jaburaid vigu,<br />
vähem rumalaid vigu. Veel kaasaegsetest süsteemidestki on leitud jaburaid vigu,
kusjuures need puudutavad nii tarkvara arenduse kui ka opereerimise poolt.<br />
kusjuures need puudutavad nii tarkvara arenduse kui ka opereerimise poolt.
Olukorda annaks parandada aidatas muuta nägemust küberturbest. Me soovime, et<br />
Olukorda annaks parandada aidatas muuta nägemust küberturbest. Me soovime, et
inimesed suudaksid kiiresti märgata vigu enne, kui need ebameeldivaid tagajärgi<br />
inimesed suudaksid kiiresti märgata vigu enne, kui need ebameeldivaid tagajärgi
põhjustavad.
põhjustavad.


== Komponendid ==
##Komponendid


Süsteemi üks peamisi komponente on laborihaldustarkvara<br />
Süsteemi üks peamisi komponente on laborihaldustarkvara
[https://github.com/magavdraakon/i-tee I-Tee]. Tegemist on avatud lähtekoodiga<br />
[I-Tee](https://github.com/magavdraakon/i-tee). Tegemist on avatud lähtekoodiga
[http://rubyonrails.org/ Ruby on Rails] platvormil kirjutatud veebirakendus.<br />
[Ruby on Rails](http://rubyonrails.org/) platvormil kirjutatud veebirakendus.
I-Tee tegeleb kogu laborite haldamisega seotud tegevustega alates labori<br />
I-Tee tegeleb kogu laborite haldamisega seotud tegevustega alates labori
defineerimisest kuni virtuaalmasinate haldamise ja kasutajale ligipääsu<br />
defineerimisest kuni virtuaalmasinate haldamise ja kasutajale ligipääsu
andmiseni. Virtualiseerimiseks kasutab I-Tee<br />
andmiseni. Virtualiseerimiseks kasutab I-Tee
[https://www.virtualbox.org/ Oracle VirtualBox] virtualiseerimistarkvara.<br />
[Oracle VirtualBox](https://www.virtualbox.org/) virtualiseerimistarkvara.
Virutaliseerimiskeskkonnaga suhtlemine toimub VirtualBox’i CLI kaudu.<br />
Virutaliseerimiskeskkonnaga suhtlemine toimub VirtualBox'i CLI kaudu.
Ekraanipilti serveeritakse kasutajale RDP kaudu.
Ekraanipilti serveeritakse kasutajale RDP kaudu.


Labori töölauamasinas avaneb kasutajale VirtualTA (teching assistant) aken.<br />
Labori töölauamasinas avaneb kasutajale VirtualTA (teching assistant) aken.
VirtualTA on Chromiumi kiosk režiimis töötav veebirakendus, mis annab kasutajale<br />
VirtualTA on Chromiumi kiosk režiimis töötav veebirakendus, mis annab kasutajale
üle
ülevaate missioonist ja täpsemad juhised ning eesmärgid. VirtualTA-s saab kasutaja
näha oma missiooni kulgu ja vihjeid edasiminekuks. VirtualTA kaudu suhtleb kasutaja
ülejäänud süsteemiga, vastates küsimustele ja sisestades valikuid.
 
Töölauapildi kasutajale ülekandmise lihtsustamiseks kasutab süšteem Guacamole
nimelist avatud lähtekoodiga tarkvara. See on mitmest alamkomponendist koosnev
veebirakendus, mis RDP kliendina käitudes võimaldab brauseri kaudu teha RDP
sessioone serverisse. Töölaua masina pilt kuvatakse kasutajale kasutades HTML5
tehnoloogiaid, WebSocket'it. Ka suudab Guacamole heli edasi kanda.
Guacamole on väga mugav võimalus kasutajale ligipääsu andmiseks ning lahendab
mõned probleemid otse RDP kasutamisega. Näiteks ei ole võimalik igast võrgust
RDP ühendusi teha, RDP vajab eraldi tarkvara ning üllatavalt on Guacamole-
põhised ühendused kiiremad otse RDP kliendiga tehtud ühendustest.
 
Olulisi komponente on muidugi veel, kuid need ei mängi põhiprotsesside juures
nii suurt rolli.
 
##Süsteemi kirjeldus
 
Süsteem on kasutaja seisukohast lihtne: veebiliidese kaudu valib kasutaja labori,
soovitava serveri (näiteks sõltuvalt oma asukohast) ning käivitab selle. Kuni
paarikümne sekundi jooksul luuakse kasutaja jaoks valitud serveris virtuaalmasinad.
Seejärel saab kasutaja labori definitsioonis määratud masina töölauapildi otse
veebibrauserisse.
 
Laborid koosnevad üldjuhul vähemalt kolmest masinast. Olulisimaks on enamasti
*ruuter*, mis lisaks tavalisele võrgulüüsile toimimisele sisaldab endas mängu-
automaatikat. Mänguautomaatika on labori keerulisim osa ning ka selle arendamine
on enamasti suurim väljakutse labori loomisel. Mänguautomaatika on tarkvara või
tarkvarad, mis tegelevad järjepidevalt olukorra hindamise ja sellele
reageerimisega. Näiteks kui kasutajal on ülesanne käivitada SSH kaudu mõni käsk,
siis mänguautomaatika käib perioodililt uurimas, kas vastavas masinas on vastav
käsk käivitatud. Keeruliseks teeb mänguloogika mitu aspekti. Esiteks peab
mänguloogika olema objektiivne ja raskesti petetav. Sealjuures peab see suutma
tuvastada, kui kasutaja on ülesandeks püstitatud probleemi lahendanud kasutades
mõnda omapärast võtet, mida lihtsal viisil kontrollida ei saa. Samas ei saa
kasutada ka ainult nn. funktsioonaalsuse teste, sest automaatika võiks aru saada
ka olukorrast, kus kasutaja on ülesande lahendamisel tupikusse jäänud ning talle
oleks vaja näiteks vihje anda.
 
Ülejäänud masinateks on kasutaja töölauaarvuti ja laborispetsiifilised masinad
(enamasti näiteks veebiserver).
 
Laborid jagunevad laias laastus kaheks: õpetavad ja kontrollivad laborid. Selget
piiri nende vahel pole ning pole mõeldudki olema, sest eesmärk on mõlemal juhul
sama. Õpetavates laborites püüame anda ülesande lahendajale kõik vajalikud
juhtnöörid ülesande edukaks täitmiseks. Lahendaja peab oma leidlikust ja
baasteadmisi kasutama antud juhtnööride rakendamiseks konkreetses ülesandes.
Hindavates laborites antakse kasutajale vaid pealiskaudne probleemikirjeldus
ning kasutaja peab varasemate oskuste najal eesmärgi täitma.

Revision as of 17:37, 14 December 2016

Keijo Kapp IT süsteemide arendus 2016

RangeForce küberlaborite süsteem

Essee

    1. Sissejuhatus

See wiki leht annab põhimõttelise ülevaate RangeForce poolt arendatavast küberlaborite platvormist. Mõistagi ei kirjelda see kõiki ettevõtte ja platvormiga seotud aspekte.

    1. Ülevaade

[RangeForce](https://rangeforce.com) on 2014 aastal loodud Eesti idufirma. Ettevõtte peamiseks produktiks on virtuaalsete küberlaborite süsteem, millega IT töötajaid ja huvilisi treenida läbi praktilise ja mängulise keskkonna. See on uuenduslik alternatiiv klassikalistele koolitustele ning võib potensiaalselt muuta IT õpetamise meetodeid.

Platvormiga proovitakse adresseerida mitmeid probleeme, mis kaasnevad tavaliste koolitustega. Ühe näitena tuua suutmatuse täpselt ja/või adekvaatselt mõõta koolituse tulemust. RangeForce platvorm suudab hinnata osaleja tegevusi ning kulunud aega ja reageerida vastavalt. Teiseks muudab see platvorm koolitused tunduvalt huvitavamateks ja seega ilmselt efektiivsemateks. Kuna laborimissiooni läbimiseks peavad kasutajad praktilises keskkonnas läbi mängima kogu labori materjali (ründed jms.), jääb materjal paremini meelde ning kasutajal on suurem potensiaal tulevikus vastavaid olukordi ära tunda ja õigesti käituda.

Ettevõtte kliendisihtgrupp on suurettevõtted, kus on arvestatav IT administreerimisele või arendamisele spetsialiseerunud seltskond. Kohati on raske sellistel ettevõtetel kontrollida ja tagada reaalne küberturbealane kompetents kõigile oma IT töötajatele. Tavapärasele koolitusele saatmine on finantsiliselt koormav ning koolituse tulemust ja kvaliteeti ei saa adekvaatselt tegelikult mõõta. Koolitusele saadetavate isikute tase võib olla väga erinev ning suurele osale võib koolitus olla liigse keerukuse või lihtsuse tõttu väheefektiivne.

Meie visioon on muuta nii elementaarsed kui ka mitmed keerulisemad küberkaitseoskused IT inimestele nii enesestmõistetavaks, et me teeksime vähem rumalaid vigu. Veel kaasaegsetest süsteemidestki on leitud jaburaid vigu, kusjuures need puudutavad nii tarkvara arenduse kui ka opereerimise poolt. Olukorda annaks parandada aidatas muuta nägemust küberturbest. Me soovime, et inimesed suudaksid kiiresti märgata vigu enne, kui need ebameeldivaid tagajärgi põhjustavad.

    1. Komponendid

Süsteemi üks peamisi komponente on laborihaldustarkvara [I-Tee](https://github.com/magavdraakon/i-tee). Tegemist on avatud lähtekoodiga [Ruby on Rails](http://rubyonrails.org/) platvormil kirjutatud veebirakendus. I-Tee tegeleb kogu laborite haldamisega seotud tegevustega alates labori defineerimisest kuni virtuaalmasinate haldamise ja kasutajale ligipääsu andmiseni. Virtualiseerimiseks kasutab I-Tee [Oracle VirtualBox](https://www.virtualbox.org/) virtualiseerimistarkvara. Virutaliseerimiskeskkonnaga suhtlemine toimub VirtualBox'i CLI kaudu. Ekraanipilti serveeritakse kasutajale RDP kaudu.

Labori töölauamasinas avaneb kasutajale VirtualTA (teching assistant) aken. VirtualTA on Chromiumi kiosk režiimis töötav veebirakendus, mis annab kasutajale ülevaate missioonist ja täpsemad juhised ning eesmärgid. VirtualTA-s saab kasutaja näha oma missiooni kulgu ja vihjeid edasiminekuks. VirtualTA kaudu suhtleb kasutaja ülejäänud süsteemiga, vastates küsimustele ja sisestades valikuid.

Töölauapildi kasutajale ülekandmise lihtsustamiseks kasutab süšteem Guacamole nimelist avatud lähtekoodiga tarkvara. See on mitmest alamkomponendist koosnev veebirakendus, mis RDP kliendina käitudes võimaldab brauseri kaudu teha RDP sessioone serverisse. Töölaua masina pilt kuvatakse kasutajale kasutades HTML5 tehnoloogiaid, WebSocket'it. Ka suudab Guacamole heli edasi kanda. Guacamole on väga mugav võimalus kasutajale ligipääsu andmiseks ning lahendab mõned probleemid otse RDP kasutamisega. Näiteks ei ole võimalik igast võrgust RDP ühendusi teha, RDP vajab eraldi tarkvara ning üllatavalt on Guacamole- põhised ühendused kiiremad otse RDP kliendiga tehtud ühendustest.

Olulisi komponente on muidugi veel, kuid need ei mängi põhiprotsesside juures nii suurt rolli.

    1. Süsteemi kirjeldus

Süsteem on kasutaja seisukohast lihtne: veebiliidese kaudu valib kasutaja labori, soovitava serveri (näiteks sõltuvalt oma asukohast) ning käivitab selle. Kuni paarikümne sekundi jooksul luuakse kasutaja jaoks valitud serveris virtuaalmasinad. Seejärel saab kasutaja labori definitsioonis määratud masina töölauapildi otse veebibrauserisse.

Laborid koosnevad üldjuhul vähemalt kolmest masinast. Olulisimaks on enamasti

  • ruuter*, mis lisaks tavalisele võrgulüüsile toimimisele sisaldab endas mängu-

automaatikat. Mänguautomaatika on labori keerulisim osa ning ka selle arendamine on enamasti suurim väljakutse labori loomisel. Mänguautomaatika on tarkvara või tarkvarad, mis tegelevad järjepidevalt olukorra hindamise ja sellele reageerimisega. Näiteks kui kasutajal on ülesanne käivitada SSH kaudu mõni käsk, siis mänguautomaatika käib perioodililt uurimas, kas vastavas masinas on vastav käsk käivitatud. Keeruliseks teeb mänguloogika mitu aspekti. Esiteks peab mänguloogika olema objektiivne ja raskesti petetav. Sealjuures peab see suutma tuvastada, kui kasutaja on ülesandeks püstitatud probleemi lahendanud kasutades mõnda omapärast võtet, mida lihtsal viisil kontrollida ei saa. Samas ei saa kasutada ka ainult nn. funktsioonaalsuse teste, sest automaatika võiks aru saada ka olukorrast, kus kasutaja on ülesande lahendamisel tupikusse jäänud ning talle oleks vaja näiteks vihje anda.

Ülejäänud masinateks on kasutaja töölauaarvuti ja laborispetsiifilised masinad (enamasti näiteks veebiserver).

Laborid jagunevad laias laastus kaheks: õpetavad ja kontrollivad laborid. Selget piiri nende vahel pole ning pole mõeldudki olema, sest eesmärk on mõlemal juhul sama. Õpetavates laborites püüame anda ülesande lahendajale kõik vajalikud juhtnöörid ülesande edukaks täitmiseks. Lahendaja peab oma leidlikust ja baasteadmisi kasutama antud juhtnööride rakendamiseks konkreetses ülesandes. Hindavates laborites antakse kasutajale vaid pealiskaudne probleemikirjeldus ning kasutaja peab varasemate oskuste najal eesmärgi täitma.