Mely OpenVPN-csomagokat védi az auth digest?
Az auth beállítás kevesebbet fed le, mint amit egy profil sugall. Járja végig a csatornát, az AEAD esetet és a vezérlőcsatorna védelmét, mielőtt digest-szabályt állít be.
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.
| 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 |
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.