OpenVPN kompresija: odbiti, samo primati ili puni LZO?
comp-lzo no nije strogo odbijanje. Uporedite odbijanje kompresije, jednostrano prihvatanje tokom migracije i zadržavanje, pa provjerite šta offload radi.
Tri linije u profilu izgledaju kao da sve isključuju kompresiju, a samo jedna to zaista čini. Razlika je važna jer je upozorenje koje želite ušutkati simptom, dok politika odlučuje može li druga strana još kompresovati. Poređenje opcija na jednoj osi, naime šta svaka dopušta nakon promjene, uklanja većinu nejasnoće. Koju želite zavisi od toga migrirate li ili se smirujete.
Tri politike koje u konfiguracijskoj datoteci izgledaju slično
Svaka opcija odgovara na drugo pitanje. allow-compression no odbija kompresovane tokove odmah, allow-compression asym dekompresuje ono što stiže i nikada ne kompresuje ono što odlazi, a stari comp-lzo no ostavlja prostor za push druge strane da uključi kompresiju. Samo je prva politika koju poslužitelj ne može nadjačati.
Zapišite te tri u tabelu prije odabira, jer su imena dovoljno blizu da zavede recenzenta. Dvije od njih još izvršavaju kod za dekompresiju na primljenim paketima, a upravo o tome govori sigurnosni argument. Treća uklanja sposobnost umjesto da ograničava njen smjer. Ako zapis o promjeni kaže da je kompresija isključena, tačno jedan red ispunjava tu rečenicu.
Upozorenje koje je pokrenulo istragu nije cilj. Ušutkati ga dok permisivna politika ostaje na mjestu daje čist dnevnik i nepromijenjenu izloženost.
| Setting | What it permits | When it is the right answer |
|---|---|---|
allow-compression no | No compressed payloads, and no compression framing under offload | Both ends can be changed now |
allow-compression asym | Decompress inbound only | A dated migration while peers catch up |
comp-lzo no | Off locally, still pushable by a peer | Legacy compatibility you can still justify |
Šta no znači kod stare LZO opcije
Kod zastarjele LZO opcije no isključuje kompresiju za lokalnu stranu, ali ne zabranjuje drugoj strani da je uključi tamo gdje politika to dopušta. Zbog te asimetrije premještanje profila na strogo odbijanje mijenja ponašanje na načine koje laboratorijski test s jednim poslužiteljem možda nikada neće otkriti.
Sigurnosna briga je uslovna, a ne apsolutna. Kada napadač može postaviti odabrani otvoreni tekst pored tajne i posmatrati kako kompresija mijenja veličinu šifrovanog saobraćaja, informacijski kanal postoji. Prelazak s LZO na LZ4 mijenja algoritam i uokvirivanje, ne taj mehanizam.
Dakle, iskren okvir tiče se onoga što ste spremni dopustiti, a ne toga koji se algoritam trenutno preporučuje. Strogo odbijanje jedina je opcija koja ne zavisi od saradnje druge strane.
Samo primanje je stanje migracije, a ne odredište
Asimetrično prihvatanje postoji da bi jedna strana mogla prestati kompresovati dok druga to još očekuje. To je most, a mostovi trebaju krajnji datum i vlasnika. Zabilježite koji partneri još šalju kompresovani saobraćaj, jer politika dopušta upravo takav saobraćaj. Bez tog spiska stanje migracije inercijom postaje trajna konfiguracija.
Klijent ne može prisiliti nekompatibilan poslužitelj da napusti staro uokvirivanje uređivanjem vlastite datoteke. Smjer push-a odlučuje se na poslužitelju, pa se migracija zapravo završava u konfiguraciji poslužitelja i njegovim datotekama po klijentu.
Stub režimi čuvaju uokvirivanje dok preskaču sam posao kompresije i nisu izravan ekvivalent starije opcije. Testirajte ih na najstarijem partneru koji još morate podržavati prije nego se odlučite za jedan.
Gdje offload podatkovnog kanala mijenja odgovor
Offload podatkovnog kanala premješta obradu paketa u kernel, a profil koji još zavisi od uokvirivanja kompresije možda se ne uklapa u taj put. Kvar nije uvijek glasan: klijent se poveže i zatim se ponaša drukčije od tunela koji ste testirali.
Provjerite koja je implementacija aktivna prije i poslije promjene, a ne samo uspijeva li veza. Kada put s offloadom odbija uokvirivanje kompresije, stroga politika odbijanja i implementacija s offloadom se slažu, dok se permisivna politika i implementacija s offloadom ne slažu.
Ta kombinacija zaslužuje vlastiti test, jer se upravo tu datoteka koja izgleda ispravno tiho pretvara u onu koja se ne koristi. Uporedite pregovoreno stanje s namjerom zapisanom u profilu, jer je samo jedno od toga vidljivo u dnevniku.
Odaberite politiku, pa provjerite pregovoreni rezultat
Odaberite strogo odbijanje kad možete promijeniti obje strane, asimetrično prihvatanje kad još ne možete, a punu kompresiju samo kad možete reći zašto je izloženost prihvatljiva. Zatim provjerite šta je pregovoreno, a ne šta datoteka kaže. Tiši dnevnik dokaz je samo kad se poklapa s politikom koju ste namjeravali primijeniti.
Držite odluku uz profil na koji se odnosi, s datumom i partnerima koji su još izuzeti. Šest mjeseci kasnije ta bilješka je razlika između namjernog izuzetka i nezgode koju niko ne može datirati. Napišite je u istom repozitoriju kao profil da sljedeći urednik vidi razlog prije direktive.