Az OpenVPN-digestekről szóló viták többsége a rossz csomagnál kezdődik. Ha a auth SHA256 kifejezést úgy olvassuk, hogy „csak a SHA256-ot kínáló partnereket fogadd el”, az az első dolog, amit le kell szokni. A beállítás bizonyos csomagokhoz nevez meg egy digestet, és hogy mely csomagok azok, a csatornától és attól függ, hogy az a csatorna AEAD-e. Dolgozza végig az alábbi négy kérdést sorrendben; mindegyik szűkíti, hogy mit jelenthet a beállítás a telepítésében.

Nevezze meg azt a csatornát, amelyet a beállításnak védenie kell

OpenVPN rendelkezik egy vezérlőcsatornával, amely a TLS kézfogás forgalmát szállítja, és egy adatcsatornával, amely az alagút hasznos terhét szállítja. Az auth digest mindkettőben szerepet játszik, de nem ugyanazt, és a profil ritkán teszi láthatóvá a különbséget. Írja le, melyiket próbálja korlátozni, mielőtt hozzányúl egy konfigurációs fájlhoz.

Az alábbi táblázat rövid változata annak, hogyan kerül ugyanaz a beállítás az egyes kontextusokba.

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

Ellenőrizze, hogy az adatcsatorna AEAD-e, mielőtt támaszkodna rá

Ha az egyeztetett adatrejtjelező AES-GCM vagy CHACHA20-POLY1305, az adatcsatorna magát hitelesíti, és a külön digest nem végzi el azt a munkát, amelyet esetleg elképzel. Mindkettő AEAD-konstrukció, tehát az integritást ugyanaz a művelet állítja elő, amely a terhet titkosítja. Ez nem visszalépés, de azt jelenti, hogy a „minden adatcsomag HMAC-SHA256” indoklással elfogadott szabály ténylegesen hibás azon az alagúton. Erősítse meg az egyeztetett értéket a kiszolgáló naplójában vagy az ügyfél állapotkimenetében, mielőtt átírja a szabályt.

A profilban szereplő lista helyett a ténylegesen egyeztetett rejtjelezőt vizsgálja, mert az egyeztetés a halmaz másik tagjánál landolhat. data-ciphers AES-256-GCM:AES-128-GCM egyeztetési lista, és mindkét bejegyzés AEAD, így egyik sem használja fel az auth digestet a teher védelmére.

Kezelje a vezérlőcsatorna védelmét külön döntésként

A tls-auth HMAC-ot ad a vezérlőcsatorna csomagjaihoz, és digestjét az auth beállításból veszi, ezért egy AEAD-alagútnak is lehet értelmes digestje beállítva. A tls-crypt más elrendezés saját rögzített védelemmel, ezért ne feltételezze, hogy örökli a tls-auth minden tulajdonságát. Olvassa el a választott mechanizmus dokumentációját, ahelyett hogy feltevéseket vigyen át köztük.

A két partnernek az elrendezésről és a kulcs irányáról is meg kell egyeznie. Az illeszkedő digest, de rossz irányban használt kulcsfájl olyan kézfogást eredményez, amely olyan okokból hiúsul meg, amelyeket a digest beállítás nem tud megmagyarázni.

Tartsa külön az auth-ot a rejtjelező-egyeztetéstől és a tanúsítványoktól

Három beállítást folyton összekevernek: az auth digestet, az adatrejtjelezők listáját és a tanúsítvány aláírási algoritmusát. Az első megváltoztatása nem állít ki újra tanúsítványt, nem választja ki annak aláírási digestjét, és nem hoz létre felhasználónév-jelszó módszert. A protokollbeállítások definíciói a OpenVPN 2.6 forrásaiban mindegyiket saját szakaszban írják le, ami hasznos emlékeztető arra, hogy független kapcsolók.

Amikor egy partner a digest módosítása után megtagadja a csatlakozást, az ok általában a másik két beállítás valamelyikének eltérése. Olvassa el mindkét végét, mielőtt bármelyiket módosítja.

Írja le a szabályt, és hasonlítsa össze a futó konfigurációkkal

A flotta szintű nyilatkozatnak ugyanabban a mondatban kifejezetten meg kell neveznie az engedélyezett adatcsatorna-módokat és a választott vezérlőcsatorna-védelmet. Az a mondat tesztelhető; a „SHA256-ot használunk” nem az. Ezután hasonlítsa össze a tényleges kiszolgáló- és ügyfélprofilokkal, nem egy tárolóban lévő sablonnal.

Fejezze be annak rögzítésével, hogy az egyes alagutak ténylegesen mit egyeztettek, és melyik mechanizmus hitelesítette a csomagjaikat. A profilban látható auth sor csak a konfigurációs szándék bizonyítéka, a szándék pedig az ellenőrzés legolcsóbb része.

Kapcsolódó cikkek