tls-auth kontraŭ tls-crypt: kion ĉiu protektas en OpenVPN
tls-auth subskribas kontrolaĵojn, tls-crypt ankaŭ kaŝas ilin. Neniu anstataŭas atestilan kontroladon aŭ la datumĉifron, kaj malkongruo aspektas kiel silento.
Ambaŭ opcioj uzas komunan ŝlosilan dosieron kaj ambaŭ malfaciligas falsadon de la manprema trafiko, tial oni traktas ilin kiel du nomojn de la sama funkcio. Ili ne estas tiaj. Unu subskribas kontrolaĵojn, la alia ankaŭ ĉifras ilin, kaj neniu rilatas al la ĉifro, kiu protektas vian utilan datumon.
Tiu distingo gravas, kiam profilo malsukcesas konektiĝi, kiam sekureca revizio demandas, kion la ŝlosilo protektas, kaj kiam iu supozas, ke la aldona dosiero igas la tunelon ĉifrita laŭ iu nedifinita maniero.
Kion la komuna ŝlosilo efektive protektas
La ŝlosilo, kiun uzas ĉi tiuj opcioj, apartenas al la kontrola kanalo: la interŝanĝo, kiu interkonsentas parametrojn, pruvas identecojn kaj derivas la datumŝlosilojn. Ĝi estas antaŭe dividita sekreto, kiun ambaŭ finpunktoj devas havi antaŭ ol la manpremo povas daŭri. Ĉar ĝi staras antaŭ la identeckontroloj, malĝusta ŝlosilo haltigas la interparolon pli frue ol malĝusta pasvorto farus. Tiu ordo klarigas, kial la fiaska reĝimo estas tiel silenta.
tls-auth uzas tiun sekreton por komputi HMAC super kontrolaĵoj. Paketo sen valida subskribo estas forĵetata antaŭ ol ĝi atingas la pli multekostan TLS-prilaboradon, tial la opcio ofte estas priskribata kiel unua filtrilo, ne kiel anstataŭaĵo de TLS.
tls-crypt iras pli malproksimen, ĉifrante la protektitan kontrolan trafikon krom aŭtentikigi ĝin. Atestila enhavo, interkonsentitaj ĉifraj nomoj kaj aliaj manpremaj detaloj ne plu videblas en la reto, kaj observanto sen la ŝlosilo eĉ ne povas vidi, kiu TLS-versio estas provata. Por starigo, kiu timas malkaŝi sian VPN-fingrospuron, tiu eco estas la ĉefa kialo elekti ĝin. Ĝi restas grupa sekreto, ne legitimilo por unuopulo.
Neniu mekanismo eldonas identecojn. La komuna ŝlosilo estas grupa sekreto, kaj ĉiu, kiu havas ĝin, povas plenumi tiun tavolon de la kontrolo.
Kie la du opcioj malsamas
La observebla diferenco estas tio, kion vidas observanto. Kun tls-auth la manpremo estas videbla, sed ne konfirmebla sen la ŝlosilo. Kun tls-crypt la manpremo estas netravidebla por ĉiu, kiu ne havas la ŝlosilon.
Ankaŭ la agordo malsamas. tls-auth estas uzata kun direkta valoro, do unu flanko uzas unu duonon de la ŝlosilmaterialo kaj la alia flanko la alian duonon. tls-crypt uzas unu ŝlosilon en ambaŭ direktoj, tial la direkta instrukcio ne apartenas al ĝia aranĝo.
En modernaj eldonoj la du opcioj reciproke ekskluzivas. Profilo portu unu el ili, ne ambaŭ, kaj la servilo kaj kliento devas interkonsenti, kiun, kun egala ŝlosilmaterialo. Teni malnovan instrukcion apud nova estas ofta migra restaĵo. Forigu la neaktivan, por ke la sekva leganto sciu, kiu tavolo efektive validas.
Pli nova varianto, tls-crypt-v2, ligas ĉiun klienton al sia propra ĉirkaŭvolvita ŝlosilo, por ke revoko de unu kliento ne postulu reeldonon de la grupa ŝlosilo. Indas scii pri ĝi, sed ĝi estas malsama opcio kaj ne sinonimo de iu el la du ĉi tie.
Kial malkongruo aspektas kvazaŭ nenio okazas
Kiam la komuna materialo ne kongruas, la kontraŭa finpunkto forĵetas la paketojn sen diri al la sendinto, kial. Ne estas aŭtentiga eraro legebla, ĉar la paketo neniam atingis la tavolon, kiu produktus ĝin.
La kliento reprovas, la servilo diras nenion, kaj la simptomo aspektas kiel reta problemo. Tiam homoj restartas la servon, retajpas la kontan pasvorton aŭ forigas la protektan instrukcion por «testi» ĝin, kio ŝanĝas la starigon anstataŭ diagnozi ĝin.
Legu en la servila protokolo la unuan plendon je paketa nivelo, ne la lastan reprovan linion. Konfirmu, ke ambaŭ flankoj portas la saman opcion kun identa ŝlosilmaterialo, kaj ke la ŝlosila dosiero ne estis regenerita nur unuflanke.
Forigi la instrukcion ne estas sekura riparo. Ĝi malŝaltas protektan tavolon por ĉiu kliento, kaj poste funkcianta tunelo pruvas nur, ke tiu tavolo estis la malkongruo.
Kio ankoraŭ devas esti agordita aparte
Ĉi tiuj opcioj ne kontrolas, kiu estas la kontraŭa finpunkto. Atestila validigo, la fida ankro kaj la atendata servila nomo restas apartaj postuloj, kaj neniu el ili iĝas laŭvola pro la ĉeesto de komuna ŝlosilo.
Ili ankaŭ ne elektas la datuman ĉifron. Tio estas aparta interkonsento regata de la agordoj de la datuma kanalo ĉe ambaŭ finpunktoj, kaj tunelo protektita per tls-crypt ankoraŭ povas uzi ĉifron, kiun vi ne intencis.
Fine, la komuna ŝlosilo mem bezonas prizorgon. Traktu ĝin kiel sekreton, disdonu ĝin per aprobita kanalo kaj anstataŭigu ĝin, kiam forlasas iu, kiu havis ĝin. Ĉar ĝi estas komuna, ĝia malkaŝo estas la malkaŝo de ĉiu finpunkto, kiu uzas ĝin.