== Internet Security Association and Key Management Protocol == == ISAKMP == == Interneto saugumo asociacijų ir raktų valdymo protokolas == ---- == Apibrėžimas == ISAKMP yra protokolas aprašantis saugumo asociacijas ir kriptografinius raktus interneto aplinkoje. Protokolas apibrėžtas dokumente RFC 2408. ---- == Paaiškinimai == ISAKMP apibrėžia komunikuojančių kompiuterių autentifikaciją, saugumo asociacijų kūrimą ir valdymą, raktų generavimo būdus ir grėsmės mažinimą (pvz. atsisakymas aptarnauti). ISAKMP paprastai naudoja IKE (Internet Key Exchange – Interneto Raktų Apsikeitimo) protokolą raktų apsikeitimui, bet galimi ir kiti būdai. ISAKMP apibrėžia saugumo asociacijų kūrimo, derinimo, modifikavimo ir trynimo procedūras ir paketų formatus. Saugumo asociacijos turi visą įvairiems tinklo saugumo servisams, tokiems kaip IP lygio servisai, transporto arba taikymo servisai, reikalingą informaciją. Šis protokolas neapibrėžia ir leidžia naudoti bet kokį raktų generavimo būtą, kodavimo algoritmą ir autentifikavimo mechanizmą. ISAKMP gali būti įgyvendintas virš bet kokio transporto protokolo. Visi įgyvendinimai turi turėti galimybę komunikuoti per UDP 500 prievadą. Jeigu bent vienas šį protokolą naudojantis kompiuteris yra už NAT tinklo, turi būti atidarytas UDP 4500 prievadas. Įgyvendinimai: *IPsec – Microsoft Windows OS; *KAME Project – BSD ir Linux OS. == Naudota literatūra == *http://en.wikipedia.org/wiki/ISAKMP *http://tools.ietf.org/html/rfc2408 ---- == Atnaujintas == ---- == Terminas == ISAKMP (angl. Internet Security Association and Key Management Protocol) – interneto saugių susijungimų ir raktų valdymo protokolas. == Apžvalga == ISAKMP yra vienas svarbiausių protokolų esančių Ipsec (liet. Interneto protokolo sauga; angl. Internet security) architektūroje, kuris apjungia autentifikavimo, saugumo raktų valdymo, saugumo asociacijų principus, taip sukurdamas reikalingą saugumo lygį. ISAKMP apibrėžia procedūras ir paketų formatus, kad sukurtų, palaikytų, keistų, arba ištrintų saugius susijungimus (angl. Security associations (SA)). SA turi visą reikalingą informaciją skirtą įvairiems tinklo saugumo servisams, tokiems kaip IP lygio servisams (angl. IP layer), transporto ar taikymo (programiniam) lygiui . ISAKMP apibūdina užpildus naudojamus apsikeitimo rakto generavimui ir informacijos autentifikavimui. Šie formatai suteikia pastovią struktūrą raktų ir autentifikacijos informacijos perdavimui, nepriklausomai nuo raktų generavimo technologijos, šifravimo algoritmų ir autentifikavimo mechanizmo. ISAKMP skiriasi nuo raktų apsikeitimo protokolų tuo, kad jame aiškiai atskirtos SA valdymo ir raktų apsikeitimo dalys. Gali būti daugybę raktų apsikeitimų protokolų ir visi jie gali turėti skirtingas saugumo savybes. Tačiau norint, kad jie visi veiktų, reikalinga pastovi ir aiški bendravimo struktūra kuri būtų suderinta su SA formatu, leistu sukurti, keisti, trinti SA. ISAKMP ir tarnauja kaip ta pastovi bendravimo struktūra (angl. framework). ISAKMP gali būti įgyvendintas virš bet kokio transporto protokolo. Visi įgyvendinimai turi turėti galimybę komunikuoti per UDP 500prievadą. Jeigu bent vienas šį protokolą naudojantis kompiuteris yra už NAT tinklo, turi būti atidarytas UDP 4500 prievadas. {{attachment:ISAKMP1.PNG}} 1 pav. ISAKMP vieta tinklo architektūroje. == Veikimas == 2 pav. parodytas ISAKMP veikimas. Jis gali būti išskirtas į du lygius. Pirmoje , du ISAKMP serveriai susitaria kaip apsaugoti toliau eisiantį apsikeitimo srautą. Kad įvyktų šis susitarimas, yra sukuriamas ISAKMP SA ryšys. Antrajame lygyje yra sudaromi SA ryšiai skirti kitiems protokolams (šiuo atveju pavaizduotas IPSEC). Paprastai reikia vieno susitarimo pirmam lygiuii, o antram gali būti jau keli. {{attachment:ISAKMP2.PNG}} 2 pav. ISAKMP veikimas == Struktūra == ||00||01||02||03||04||05||06||07||08||09||10||11||12||13||14||15||16||17||18||19||20||21||22||23||24||25||26||27||28||29||30||31|| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||Initiator cookie|| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||Responder cookie|| ||||||||||||||Next payload||||||||||||||Mjr version||||||||||||||Mnr version||||||||||||||Exchange type||||||||||||||Flags|| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||Message ID|| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||Length|| '''Initiator cookie''' – iniciatoriaus, kuris sukūrė, pakeitė, ištrynė SA slapukas. '''Responder cookie''' – atsakančiojo, kuris atsako į SA sukurimą, pakeitimą, istrinimą slapukas '''Next payload''' – nurodo pirmojo užpildo tipą. Jo rekšmės pateiktos žemiau. ||Vertė|| Pavadinimas|| Pastabos|| ||0 ||None. || || ||1 ||Security Association. ||Saugumo aplinkos nustatymai|| ||2 ||Proposal. ||Kanalo apsaugos mechanizmai|| ||3 ||Transform. ||DOI* transformacijos|| ||4|| Key Exchange. ||Nurodo raktų apsikeitimo techniką (Oakley t.t)|| ||5|| Identification.|| Laiko DOI informacija|| ||6|| Certificate. ||Skirta pernešti certifikatų informaciją|| ||7|| Certificate Request. ||Naudojama paprašyti certifikato per ISAKMP|| ||8|| Hash. ||Laiko hash informacija, kuri generuojama sudarius SA|| ||9|| Signature. ||Laiko skaitmeninio parašo informacija|| ||10|| Nonce. ||Laiko atsitiktinę informaciją. Palaiko testinumą vykdant apsikeitimus.|| ||11|| Notification. ||Naudojama klaidoms ir kitai svarbiai informacijai perduot|| ||12|| Delete. || || ||13|| Vendor ID. || || ||14|| || || ||15|| SAK, SA KEK Payload.|| || ||16|| SAT, SA TEK Payload.|| || ||17||Key Download.|| || ||18||Sequence Number. || || ||19|| Proof of Possession.|| || ||20|| NAT-D, NAT Discovery.|| || ||21|| NAT-OA, NAT Original Address.|| || ||22-127|| || || ||128-255||Private use.|| || '''*DOI''' – domenų interpretacija, naudojama sugrupuoti susietiems protokolams '''Mjr version''' – nurodo kokia ISAKMP vyresnioji versiją (pvz. 1.X ; 3.X ir t.t) '''Mnr version''' - nurodo kokia ISAKMP jaunesnioji versiją (pvz. X.1 ; X.2 ir t.t) '''Exchange type''' – nurodo kokio tipo apsikeitimai yra vykdomi. Pagal jį sprendžiami užpildų išdėstymai ir žinutės ISAKMP apsikeitimuose. Jo reikšmes pateikiamos žemiau ||Vertė|| Pavadinimas|| Pastabos|| ||0 ||None. || ||1 ||Base. ||Apsikeitimo raktas ir autentifikacijos informacija siunčiami kartu vienoje žinutėje.|| ||2 ||Identity protection. ||Apsikeitimo raktas ir autentifikacijos informacija atskiriamos ir siunčiamos per dvi žinutes. Padidintas saugumas|| ||3 ||Authentication only.|| Leidžia siųsti informaciją susijusią su autentifikavimu || ||4 ||Aggressive. ||Leidžia SA, apsikeitimo rakto ir autentifikacijos informaciją siųsti vienoje žinutėje|| ||5 ||Informational. ||Ši žinutė nepriklauso ISAKMP. Šiuo lauku naudojasi ISA.|| ||6-31|| ISAKMP future use. || || ||32-239|| DOI specific use.|| || ||240-255 ||Private use. || || '''Flags''' – nurodo nustatymus, kurie galios ISAKMP apsikeitime. Jo reikšmes pateikiamos žemiau ||00 ||01 ||02 ||03 ||04 ||05 ||06 ||07|| ||||||||||reserved ||A ||C ||E|| '''A, Authentication only''' – skirtas naudoti esant neformaliam susitarimui. Leidžia vykdyti siuntimus su vientisumo patikrinimu, bet jie nešifruojami '''C, Commit '''– skirtas pradėti raktų apsikeitimo procedūrai. Užtikrina, kad šifruota informacija nebus siunčiama, kol nėra sukurtas SA. '''E, Encryption''' – nustačius ši bitą, visi užpildai einantys po antraštės bus šifruojami '''Message ID '''- Unikali vertė, pagal kurią sprendžiamą apie esamą padėtį vykdant 2 lygio susitarimus. Jis atsitiktinai sukuriamas ISAKMP ryšio iniciatoriaus. '''Length''' – visas ISAKMP antraštės ir užpildų ilgis (baitais) == Literatūros sąrašas == *http://www.tml.tkk.fi/Opinnot/Tik-110.501/1998/papers/16isakmp/isakmp.html *http://www.ietf.org/rfc/rfc2408.txt *http://www.javvin.com/protocolISAKMP.html *http://www.tinklusaugumas.lt/cgi-bin/moin.py/Internet%20Security%20Association%20and%20Key%20Management%20Protocol