Kuriuos OpenVPN paketus saugo auth santrauka?
Parinktis auth apima mažiau, nei leidžia manyti profilis. Peržiūrėkite kanalą, AEAD atvejį ir valdymo kanalo apsaugą prieš nustatydami santraukos politiką.
Dauguma ginčų dėl OpenVPN santraukų prasideda nuo netinkamo paketo. Skaityti auth SHA256 kaip „priimk tik tuos partnerius, kurie siūlo SHA256“ yra pirmas dalykas, kurio reikia atprasti. Parinktis įvardija santrauką tam tikriems paketams, o kurie tai paketai, priklauso nuo kanalo ir nuo to, ar tas kanalas yra AEAD. Peržiūrėkite keturis žemiau pateiktus klausimus iš eilės; kiekvienas susiaurina, ką nustatymas gali reikšti jūsų diegime.
Įvardykite kanalą, kurį nustatymas turi saugoti
OpenVPN turi valdymo kanalą, kuriuo keliauja TLS rankos paspaudimo srautas, ir duomenų kanalą, kuriuo keliauja tunelio naudingoji apkrova. auth santrauka vaidina vaidmenį abiejuose, bet ne tą patį, ir profilis retai padaro skirtumą matomą. Užsirašykite, kurį iš dviejų bandote apriboti, prieš liesdami konfigūracijos failą.
Žemiau esanti lentelė yra trumpa versija, kaip ta pati parinktis atsiduria kiekviename kontekste.
| Context | What the auth digest does |
|---|---|
| Data channel without AEAD | Selects the HMAC digest that authenticates each data packet |
| Data channel with AEAD, such as GCM | Unused for the data channel; the cipher authenticates its own packets |
| Control channel protected by tls-auth | Selects the HMAC digest for that protection, even when data is AEAD |
Prieš pasikliaudami patikrinkite, ar duomenų kanalas yra AEAD
Jei suderintas duomenų šifras yra AES-GCM arba CHACHA20-POLY1305, duomenų kanalas autentifikuoja pats save, o atskira santrauka neatlieka darbo, kurį galbūt įsivaizduojate. Abi yra AEAD konstrukcijos, todėl vientisumą sukuria ta pati operacija, kuri šifruoja apkrovą. Tai nėra lygio sumažinimas, bet reiškia, kad politika, grindžiama „kiekvienas duomenų paketas yra HMAC-SHA256“, tame tunelyje faktiškai neteisinga. Prieš perrašydami politiką patvirtinkite suderintą reikšmę serverio žurnale arba kliento būsenos išvestyje.
Tikrinkite šifrą, kuris iš tikrųjų buvo suderintas, o ne sąrašą profilyje, nes derybos gali atsidurti kitame rinkinio naryje. data-ciphers AES-256-GCM:AES-128-GCM yra derybų sąrašas, ir abu įrašai yra AEAD, todėl nė vienas jų nenaudoja auth santraukos apkrovos apsaugai.
Valdymo kanalo apsaugą traktuokite kaip atskirą sprendimą
tls-auth prideda HMAC prie valdymo kanalo paketų ir ima savo santrauką iš auth nustatymo, todėl AEAD tunelyje vis tiek gali būti prasminga suderinta santrauka. tls-crypt yra kitokia tvarka su sava fiksuota apsauga, todėl ne manykite, kad ji paveldi kiekvieną tls-auth savybę. Skaitykite pasirinkto mechanizmo dokumentaciją, o ne perkelkite prielaidas tarp jų.
Abu partneriai taip pat turi sutarti dėl tvarkos ir dėl rakto krypties. Sutampanti santrauka, bet netinkama kryptimi naudotas rakto failas sukuria rankos paspaudimą, kuris nepavyksta dėl priežasčių, kurių santraukos nustatymas negali paaiškinti.
Laikykite auth atskirai nuo šifrų derybų ir sertifikatų
Trys nustatymai nuolat painiojami: auth santrauka, duomenų šifrų sąrašas ir sertifikato parašo algoritmas. Pakeitus pirmąjį, sertifikatas neišduodamas iš naujo, neparenkama jo parašo santrauka ir nesukuriamas vartotojo-slaptažodžio metodas. Protokolo parinkčių aprašai OpenVPN 2.6 šaltiniuose aprašo kiekvieną atskirame skyriuje, o tai naudinga priminti, kad tai nepriklausomi reguliatoriai.
Kai partneris atsisako prisijungti pakeitus santrauką, priežastis paprastai yra neatitikimas viename iš kitų dviejų nustatymų. Perskaitykite abu galus prieš keisdami bet kurį.
Užrašykite politiką ir palyginkite ją su veikiančiomis konfigūracijomis
Flotės lygio teiginys turėtų tame pačiame sakinyje aiškiai įvardyti leidžiamus duomenų kanalo režimus ir pasirinktą valdymo kanalo apsaugą. Tas sakinys yra patikrinamas; „mes naudojame SHA256“ – ne. Tada palyginkite jį su veiksmingais serverio ir kliento profiliais, o ne su šablonu saugykloje.
Užbaikite užrašydami, dėl ko kiekvienas tunelis iš tikrųjų susitarė ir kuris mechanizmas autentifikavo jo paketus. Matoma auth eilutė profilyje yra tik konfigūracijos ketinimo įrodymas, o ketinimas yra pigiausia patikros dalis.