Statični ključ ali TLS za povezavo OpenVPN med dvema vozliščema?
Statični način delovanja OpenVPN ne more rotirati svojih prometnih ključev. Če dve vozlišči potrebujeta samodejno obnovitev, preklopite na način TLS in pustite postavitev od točke do točke nespremenjeno.
Dva računalnika, ki se pogovarjata samo drug z drugim, lahko ohranita to topologijo in vseeno dobita dogovorjene prometne ključe. Oblika omrežja in način zaščite sta neodvisni izbiri, in prav njunega mešanja se ljudje lotijo, ko poskušajo rotirati statično skrivnost z zamenjavo datoteke, medtem ko oba demona še vedno tečeta. Zamenjava datoteke s ključem pod delujočim parom ne rotira ničesar. Statični način, ki ga OpenVPN 2.6 označuje kot zastarel, hrani en ključ za celotno življenjsko dobo tunela, zato se datoteka na disku in ključ v pomnilniku znova ujemata šele po ponovnem zagonu obeh koncev. Če je zahteva samodejna obnovitev, se mora način zaščite spremeniti.
Česa statični način ne zmore
V tajnem načinu si obe vozlišči delita vnaprej dogovorjen ključ, ki tunel neposredno šifrira in overi. Roke si ne podajata, zato ni mehanizma, s katerim bi katera koli stran predlagala nov ključni material, dokazala identiteto ali se brez posredovanja operaterja pobrala po neskladju. Obe lastnosti izhajata iz odsotnosti krmilnega kanala, ne iz manjkajoče možnosti, in nobena konfiguracijska zastavica jima tega ne doda v tem načinu.
Priročnik OpenVPN 2.6 izrecno navaja, da ključ ostane, dokler ni ustvarjen nov. To je sprejemljivo za laboratorijsko povezavo ali fiksni par naprav z dokumentiranim postopkom rotacije in nesprejemljivo povsod, kjer je dolgotrajna skrivnost resnično tveganje. Zamenjava datoteke ne ustvari novega ključa za delujoči par; ustvari dve vozlišči, ki se ne strinjata. Zato zamenjava datoteke doda prekinitev, ne da bi dodala rotacijo.
Prav tako ni pojma identitete vozlišča zunaj posedovanja datoteke. Kdor ima ključ, je vozlišče, in nič v tunelu ne zabeleži, katera stran je katera, zato je preklic vse ali nič.
Prehod na TLS brez preoblikovanja povezave
Način TLS doda krmilni kanal in z njim zmožnost pogajanja o ključih podatkovnega kanala. Pri postavitvi od točke do točke ena stran prevzame vlogo strežnika, druga vlogo odjemalca, a topologija ostane povezava med dvema vozliščema: vsaka stran pozna končno točko druge in ne pojavi se noben nabor niti večuporabniška storitev. Vloge so podrobnost rokovanja, ne nova arhitektura.
Vsakemu računalniku dajte lastno identiteto. Vsaka stran potrebuje potrdilo in zasebni ključ, sidro zaupanja, ki overja drugo stran, in pravilo preverjanja vozlišča, ki poimenuje, kdo je pričakovan. Ne uporabite znova zasebnega ključa enega vozlišča na drugem, da bi prihranili čas; to spremeni dve identiteti v eno in odstrani možnost preklica vsake strani posebej. Vpis je mesto, kjer je treba to storiti pravilno, ker poznejše popravljanje pomeni ponovno izdajo potrdil.
Ohranite omrežno pogodbo nespremenjeno, medtem ko se zaščita spreminja. Isti naslovi tunela, poti in dovoljene storitve bi morali veljati pred in po, tako da je okvara med selitvijo problem zaščite in ne zakrinkano presenečenje usmerjanja. Zapišite naslove in poti pred spremembo; primerjava pozneje je hitrejša od obnavljanja iz spomina.
Nekatere postavitve zaščitijo tudi krmilni kanal z lastnim statičnim ključem, ki se ne rotira skupaj s podatkovnim kanalom. Ta ključ varuje rokovanje in ne koristnega tovora, zato njegova ogroženost razkrije pogajanja in ne prometa. Shranjujte ga ločeno od gradiva podatkovnega kanala in mu določite datum zamenjave, za katerega je odgovorna imenovana oseba. Njegova rotacija pomeni ponovni zagon obeh vozlišč v usklajenem oknu, zato si zasluži vnos v koledar in ne spomina.
Kdo kaj obnovi in kdaj
V načinu TLS obnovitev vodijo nastavljene meje: časovni interval, število bajtov ali število paketov. Dokumentirano časovno krmiljenje je tisto, na kar se zanaša večina postavitev, in nižja učinkovita vrednost na obeh vozliščih lahko začne zamenjavo, zato dvig samo na eni strani dogodka ne zadrži. Meje glede na obseg obstajajo zato, ker lahko zasedena povezava izčrpa ključ veliko prej kot ura. Nobena meja ni pregled stanja in nobena vam ne pove, da je bila obnovitev uspešna.
Zato je diagnosticiranje ponavljajočega se ponovnega pogajanja iz ene konfiguracijske datoteke zavajajoče. Preberite nastavitve na obeh vozliščih in nato poglejte prehod v dnevniku, namesto da bi domnevali okvaro. Obnovitev, ki se čisto zaključi, izgleda kot kratek izbruh prometa krmilnega kanala, ne kot prekinitev.
Predmete imejte ločene v glavi. Potrdilo dokazuje dolgoročno identiteto in se zamenja po urniku, ki ga nadzorujete. Ključ podatkovnega kanala se osveži samodejno, ločena izmenjava overjanja, če jo postavitev zahteva, pa sledi politiki računa in lahko potrebuje lastne dogovore za poznejše izmenjave.
Popolna izključitev obnavljanja z nastavitvijo intervala na nič ni rešitev za hrupen dnevnik. Zdravi dogodek življenjskega cikla spremeni v trajni ključ, kar vas vrne k lastnosti, ki ste jo poskušali pustiti za seboj.
Sprejetje spremembe
Zgradite novo konfiguracijo iz podprtega primera nameščene izdaje, ne iz starega minimalnega izseka, katerega algoritmi in poti do datotek so podedovani od drugod. Uskladite preklop, da se obe vozlišči spremenita skupaj, in imejte odobreno pot obnovitve, če se ena stran ne zažene. Povezavo spustite namerno, namesto da bi čakali na prekinitev, da bi preizkusili razveljavitev. Razveljavitev, ki ste jo vadili, je vredna več od razveljavitve, ki ste jo opisali.
Preizkusite tri stvari: začetno preverjanje identitete uspe, predvideni tok aplikacije deluje in nadzorovana obnovitev se zgodi brez izgube prometa. Nato preberite prehod v dnevniku glede na to, kaj v resnici dokazuje: nova oznaka ključa pomeni, da sta vozlišči dokončali zamenjavo, ne da se je tunel znova povezal. Obravnavajte ga kot dokaz enega koraka in preverite števce prometa, preden razglasite selitev za končano.
Kar bi obljuba ničelne prekinitve skrila, je okvara, ki je še niste videli. Neuspešna obnovitev, potekajoče potrdilo ali okvara poti lahko povezavo še vedno motijo, in nobene od njih ne izloči čist testni tek. Lastnost, za katero se splača načrtovati, je ožja in koristnejša: rutinska zamenjava ključev preneha biti ročna zamenjava datoteke.