GDOI: kodėl raktų serveris nėra jūsų duomenų kelyje
GDOI valdiklis platina grupės politiką ir raktus; nariai patys saugo duomenis. Registracija, raktų atnaujinimo pristatymas ir persiuntimas reikalauja atskirų patikrų.
Grupės raktų serveris platina politiką ir raktus nariams, o nariai patys saugo srautą. Šis sakinys skamba kaip formalumas tol, kol projektas nepradeda traktuoti valdiklio kaip kiekvieno apsaugoto paketo retransliavimo įrenginio; tada topologija gauna šuolį, kurio niekada nereikėjo, o srauto kelias priklauso nuo įrenginio, kuris turėjo tik dalyti būseną. Pasakyti, kur yra raktų serveris, ir pasakyti, kur teka duomenys, yra dvi skirtingos diagramos, ir GDOI pastatytas būtent aplink šį skirtumą. Apversti tai nėra maža modeliavimo klaida, nes ji keičia, ką stebite ir ką skalėsite. Tolesni skyriai laikosi paties protokolo skirstymo.
Dvi saugos būsenos rūšys
RFC 6407 apibrėžia nario traukimo mainus politikai ir raktų medžiagai prašyti bei stūmimo mainus, kurie platina politiką ir raktų atnaujinimus įgaliotiems nariams. Abu valdo saugos asociacijas. Nė vienas nėra programos duomenų srautas, todėl sėkmingi mainai įrodo tik tai, kad valdymo kanalas veikė. Narys gali švariai užsiregistruoti, turėti galiojančius raktus ir vis tiek nesugebėti apsaugoti ar persiųsti srauto, jei jo duomenų politika neteisinga. Šios dvi gedimų rūšys atrodo visiškai skirtingai, kai žinai, kurie mainai ką neša.
Standartas taip pat įvardija raktų atnaujinimo saugos asociaciją, kuri apsaugo raktų atnaujinimo pranešimus, atskirai nuo duomenų saugos asociacijų, aprašančių, kaip nariai saugo srautą.
Sekite mainus, o ne diagramą
Pažiūrėkite, kam skirtas kiekvienas pranešimas. Registracija pasako valdikliui, kuris narys klausia, ir sukuria būseną; raktų atnaujinimas pasako nariams, kad pasikeitė politika arba raktai; tada apsaugotas programos srautas teka tarp narių naudojant įdiegtą duomenų saugos asociaciją. Valdiklio adresas rodomas pirmuosiuose dviejuose ir trečiajame visai neturi būti rodomas.
Todėl fiziniu gretimumu pagrįsta sąsajų diagrama čia klaidina. Valdiklio sąsaja yra valdymo šaltinis, o ne automatiškai kitas kiekvieno užšifruoto paketo šuolis.
Trys įrašai, kuriuos verta saugoti
Užsirašykite nario autentifikuotą registraciją ir valdymo šaltinį, kurį jis pasiekia, kelią, kuriuo pristatomi vėlesni raktų atnaujinimai, bei maršrutus ir prisijungimus, kurie neša apsaugotą programos srautą. Trys įrašai, trys savininkai, ir bet kurio iš jų gedimas duoda skirtingą simptomą. Narys, kuris užsiregistruoja ir paskui niekada negauna atnaujinimo, atrodo lygiai taip pat kaip narys, užsiregistravęs su pasenusia politika, nebent turite abu įrašus.
Laikykite tai šalia konfigūracijos, o ne kažkieno atmintyje. Narystės pokyčiai tokie reti, kad argumentacija visada jau būna dingusi, kai jos prireikia.
Sąsaja, paslaugos prisijungimas, apdorojimo kelias
Paslaugomis pagrįstame šliuze yra dar vienas skirtumas: fizinis pagrindo adresas nėra tas pats kaip vietinis paslaugos prisijungimas, o platformos realizacija nusprendžia, kaip srautas pasiekia jos IPsec apdorojimo kelią. Paslaugos perkėlimas į fizinę sąsają arba nesusijusio vertimo pridėjimas todėl, kad klaidos pranešimas paminėjo paslaugos sąsajos taisyklę, yra spėjimas, apsirengęs taisymu.
Skaitykite pačios platformos dokumentaciją apie tai, kaip paslaugos prisijungimas priima srautą. Mechanizmas priklauso nuo tiekėjo net tada, kai protokolas yra standartinis.
Standartizuoti protokolo pranešimai taip pat nenustato suderinamumo tarp tiekėjų. Palyginkite reikiamas funkcijas, politikos ir asociacijos atributus, autentifikavimo metodą bei tikslią platformą ir leidimą prieš manydami, kad dvi realizacijos veiks kartu.
Valdymo prieinamumas ir duomenų persiuntimas yra atskiros patikros
Planuokite valdiklio pasiekiamumą įprastam darbui, narystės pokyčiams ir raktų atnaujinimams. Programos mainai, kurie pavyksta jau įdiegtoje būsenoje, neįrodo, kad kita registracija ar atnaujinimas pasieks narį, o spraga paprastai pasirodo po kelių valandų kaip tunelis, kuris nustoja priimti naujus narius. Išbandykite naują registraciją, o ne tik veikiančią sesiją.
Tada išbandykite persiuntimą atskirai, be valdiklio. Dvi patikros, du rezultatai ir daug trumpesnis ginčas, kuri pusė sugedusi.