Večina razprav o povzetkih OpenVPN se začne pri napačnem paketu. Brati auth SHA256 kot »sprejmi samo partnerje, ki ponujajo SHA256« je prva stvar, ki se je treba odvaditi. Možnost poimenuje povzetek za določene pakete, in kateri so ti paketi, je odvisno od kanala in od tega, ali je ta kanal AEAD. Preglejte štiri vprašanja spodaj po vrsti; vsako zoži, kaj lahko nastavitev pomeni v vaši uvedbi.

Poimenujte kanal, ki naj bi ga nastavitev varovala

OpenVPN ima krmilni kanal, ki prenaša promet rokovanja TLS, in podatkovni kanal, ki prenaša koristno obremenitev tunela. Povzetek auth ima vlogo v obeh, a ne enake, in profil redko naredi razliko vidno. Zapišite, katerega od obeh poskušate omejiti, preden se dotaknete konfiguracijske datoteke.

Spodnja tabela je kratka različica tega, kako ista možnost pristane v vsakem kontekstu.

ContextWhat the auth digest does
Data channel without AEADSelects the HMAC digest that authenticates each data packet
Data channel with AEAD, such as GCMUnused for the data channel; the cipher authenticates its own packets
Control channel protected by tls-authSelects the HMAC digest for that protection, even when data is AEAD

Preden se nanj zanesete, preverite, ali je podatkovni kanal AEAD

Če je dogovorjena podatkovna šifra AES-GCM ali CHACHA20-POLY1305, se podatkovni kanal avtenticira sam in ločen povzetek ne opravlja dela, ki si ga morda predstavljate. Oba sta konstrukciji AEAD, zato celovitost nastane z isto operacijo, ki šifrira obremenitev. To ni znižanje ravni, pomeni pa, da je politika, utemeljena kot »vsak podatkovni paket je HMAC-SHA256«, na tem tunelu dejansko napačna. Preden prepišete politiko, potrdite dogovorjeno vrednost v dnevniku strežnika ali v izpisu stanja odjemalca.

Preverite šifro, ki je bila dejansko dogovorjena, ne seznama v profilu, ker se lahko pogajanja ustavijo pri drugem članu niza. data-ciphers AES-256-GCM:AES-128-GCM je seznam za pogajanja in oba vnosa sta AEAD, zato nobeden od njiju ne porabi povzetka auth za zaščito obremenitve.

Zaščito krmilnega kanala obravnavajte kot ločeno odločitev

tls-auth doda HMAC paketom krmilnega kanala in svoj povzetek vzame iz nastavitve auth, zato ima lahko tunel AEAD še vedno smiselno nastavljen povzetek. tls-crypt je drugačna ureditev z lastno fiksno zaščito, zato ne domnevajte, da podeduje vsako lastnost tls-auth. Berite dokumentacijo za mehanizem, ki ste ga izbrali, namesto da prenašate domneve med njima.

Oba partnerja se morata strinjati tudi glede ureditve in glede smeri ključa. Povzetek, ki se ujema, a datoteka ključa, uporabljena v napačni smeri, povzroči rokovanje, ki ne uspe zaradi razlogov, ki jih nastavitev povzetka ne more pojasniti.

Hranite auth ločeno od pogajanj o šifrah in od potrdil

Tri nastavitve se nenehno mešajo: povzetek auth, seznam podatkovnih šifer in algoritem podpisa potrdila. Sprememba prve potrdila ne izda znova, ne izbere njegovega podpisnega povzetka in ne ustvari metode uporabnik-geslo. Opredelitve protokolskih možnosti v virih OpenVPN 2.6 opisujejo vsako v svojem razdelku, kar je koristen opomnik, da so to neodvisni gumbi.

Ko partner po spremembi povzetka noče vzpostaviti povezave, je vzrok običajno neskladje v eni od drugih dveh nastavitev. Preberite oba konca, preden spremenite katero koli.

Zapišite politiko in jo primerjajte z delujočimi konfiguracijami

Izjava na ravni flote bi morala v istem stavku izrecno navesti dovoljene načine podatkovnega kanala in izbrano zaščito krmilnega kanala. Ta stavek je preverljiv; »uporabljamo SHA256« ni. Nato jo primerjajte z dejanskimi profili strežnika in odjemalca, ne s predlogo v repozitoriju.

Končajte z zapisom, o čem se je vsak tunel dejansko dogovoril in kateri mehanizem je avtenticiral njegove pakete. Vidna vrstica auth v profilu je le dokaz namere konfiguracije, namera pa je najcenejši del preverjanja.

Sorodni članki