OpenSSL er þegar uppsett, hýsillinn hefur entropíu, og að búa til lykil með því virðist augljósi flýtileiðin. Úttakið verður slembið og leynt og algjörlega ónothæft, og bilunin kemur sem villa í stjórnrás frekar en eitthvað sem nefnir lykilform. Sú villandi leið er dýri hlutinn, því hún sendir fólk að skoða dulritunina sína. Það sem VPN les er ákveðin skráarbygging, ekki handahófskenndur bætablokk, og eitt afbrigði eiginleikans er alls ekki hægt að framleiða utan netþjónsins.

Hvað skráin á disknum þarf í raun að vera

Statísk lykilskrá OpenVPN er texti. Hún byrjar á athugasemdarlínu sem tilgreinir hvað hún er, ber hexgögn í röðum með föstum breiddum og er samtals 256 bæti af lykilefni. OpenVPN les hana sem sameiginlega leyndarmál stjórnrásarinnar, ekki sem skírteini, ekki sem lykilsetningu og ekki sem eitthvað sem TLS-safn myndi þekkja.

Sama tegund hlutar þjónar báðum eiginleikum stjórnrásarinnar. Með tls-auth þarf hver jafningi einnig stefnu svo ekki sé hægt að endurkasta pakkum annarrar hliðar til hans. Með tls-crypt dulkóðar og auðkennir eitt sameiginlegt leyndarmál stjórnrásina í báðar áttir, sem felur handabandið og verndar það um leið.

Ekkert af þessu er leynd þekking, og sniðið er ekki málið. Málið er að skráin verður að passa nákvæmlega við það sem lesandinn á von á: haus, raðarbreidd, lokandi línuskil og heildarlengd. Skrá sem er einni röð út af hleðst sem rusl eða mistekst alfarið. Að bera saman tvo jafningja bæti fyrir bæti er því lögmætt fyrsta próf, og það er fljótlegra en að lesa hvora sem er af skránum tveimur.

Leiðin sem er studd til að búa til eina

Búðu til hinn einfalda statíska lykil með tólinu sem mun nota hann, og vísaðu svo til hans frá báðum endum:

openvpn --genkey secret /etc/openvpn/tc-shared.key
tls-crypt /etc/openvpn/tc-shared.key

Stafsetning valkostsins breyttist með tímanum: eldri uppsetningar frá 2.4-tímanum notuðu form með sérstökum fána fyrir skráarheitið, en núverandi byggingar taka við því styttra. Hvort sem er, skráin sem verður til er sama tegund hlutar, svo prófið er hvort báðir jafningjar hafa sömu bæti.

Önnur kynslóðin bætir við byggingu sem enginn utanaðkomandi rafall getur fundið upp. Netþjónslykill er búinn til einu sinni, og hver biðlari fær innvafinn lykil sem er leiddur af honum:

openvpn --genkey tls-crypt-v2-server /etc/openvpn/tc-v2-server.key
openvpn --genkey tls-crypt-v2-client /etc/openvpn/laptop1.key --tls-crypt-v2 /etc/openvpn/tc-v2-server.key

Það sem biðlarinn fær er ekki eigin lykill netþjónsins tvítekinn. Það er innvafinn hlutur sem ber lýsigögn sem aðeins netþjónninn getur opnað, og sú innvöfðun er ástæðan fyrir því að hægt er að afturkalla skrá fyrir hvert tæki án þess að snerta nokkurt annað tæki. Hafðu netþjónslykilinn á netþjónnum og meðhöndlaðu hann sem rót þess trausts fyrir hvert tæki.

Hvar handbúnir bætar brotna

Að prenta 256 slembibæti sem hex undir réttum haus myndi fræðilega gefa statíska lykilskrá sem hleðst. Það er samt slæm hugmynd. Sérhver smáatriði í sniði verður tækifæri til að framleiða efni sem mistekst við hleðslu eða, verra, skilur tvo jafningja eftir með mismunandi gildi sem koma aðeins í ljós sem auðkenningarbilun.

Ekkert sambærilegt er mögulegt með v2-afbrigðinu. Innvafinn biðlaralykill er aðeins til sem úttak úr lykilferli netþjónsins, og netþjónninn varðveitir efnið sem þarf til að vefja hann út. Slembiklessi verður hafnað eða tekst einfaldlega ekki að afkóða, og hvorug skilaboðanna nefna slembni.

Útgáfusamhæfi liggur ofan á öllu þessu. Fyrsta kynslóðin þarf útgáfu sem styður hana á báðum endum, og önnur þarf aftur nýrri útgáfu. Biðlari sem byggður var áður en eiginleikinn var til getur ekki lokið handabandi við netþjón sem tekur aðeins við innvafnu efni, og bilunin sem hann tilkynnir bendir á stjórnrásina frekar en útgáfuna.

Snúningur án þess að loka alla úti

Að snúa einu sameiginlegu leyndarmáli er samhæfingaræfing frekar en tæknileg. Hver biðlari þarf varaskrána í höndunum áður en netþjónninn dregur hina fyrri til baka, og hver vél sem heldur enn gamla gildinu mistekst á þeirri stundu. Byrjaðu ekki á þeim snúningi mitt í vinnudegi.

Með v2-fyrirkomulaginu er snúningurinn fyrir hvert tæki: gefðu út nýjan innvafinn lykil fyrir eina vél og lækkaðu þann gamla í tíma aðeins fyrir þá vél. Það er aðalrökstuðningurinn fyrir að skipta yfir þegar hver biðlari er á útgáfu sem styður það.

Skráarheimildir eiga heima í sama samtali. Lykillinn ætti aðeins að vera læsilegur af reikningnum sem keyrir þjónustuna, og hann ætti ekki að búa í sama geymslu og sniðin sem hann verndar. OpenVPN 2.6 tilvísunin skjalfestir myndunarformin og lykilefnishlutana, sem er betri heimild en afrituð skipun úr forumfærslu.

Tengdir greinar