Egy tls-crypt-v2 profil beillesztése egy jegybe ártalmatlannak tűnik, amíg meg nem számolja, mi van a fájlban. Az ügyfél vezérlőcsatorna-kulcsa ugyanazon kulcs titkosított másolata mellett ül, és egy harmadik objektum, a becsomagoló kulcs soha nem hagyja el az elfogadó kiszolgálót. Ez a három különböző kérdésre válaszol a felügyeletről, a megosztásról és a kivonásról. Szétválasztásuk a legtöbb szabályzati vitát még a kezdet előtt rendezi.

Mit tartalmaz valójában a profil

A tls-crypt-v2 ügyfélfele egy kulcs és annak becsomagolt másolata. Az ügyfél a sima kulcsot használja a vezérlőcsatorna védelmére, és a beállítás során átadja a becsomagolt másolatot a kiszolgálónak, így a kiszolgáló ugyanazt a kulcsot állítja vissza anélkül, hogy ügyfelenként sima másolatot tárolna. A becsomagoló kulcs teszi lehetővé ezt a visszaállítást, és csak az elfogadó oldalon van helye. Minden lentebb abból következik, hol él ez a három objektum.

ObjectWhere it livesWhat can open itWhat a leak costs
Server wrapping keyaccepting servers onlythe unwrap step inside the serverevery wrapped copy issued to that group becomes readable
Wrapped client keyinside the client profilethe server wrapping keyit names a client and exposes its metadata, but not the key inside
Client control keyinside the client profile, usable as-isthe client that owns itsomeone can open handshakes as that client until the server refuses the key

Olvassa a táblázatot felügyelet szerint, ne név szerint, és a következmények maguktól kirajzolódnak. A becsomagoló kulcs elvesztése a drága esemény, mert a profilban semmi nem tudja újraépíteni, és a tisztességes helyreállítás a csoport újrakibocsátása. A kiszivárgott profil olcsóbb, de sokkal gyakoribb, mert az emberek jegyekbe illesztik a profilokat, abban a hitben, hogy a becsomagolt másolat biztonságossá teszi a fájlt a megosztásra. A két hiba különböző választ kíván, ezért tartják külön az objektumokat.

Miért nem a becsomagolt másolat a teljes történet

A profil a használható ügyfélanyagot a becsomagolt párjával együtt hordozza, így a másolat védelme a kiszolgáló számára semmit nem mond a fájl védelméről. A blob biztonságos továbbításra és nem biztonságos közzétételre. A benne lévő metaadatok láthatók mindenkinek, aki megkapja a blobot, beleértve azt is, aki később elolvassa a jegyet, amelybe beillesztették.

Tekintse a profilt hitelesítő adatnak, ne konfigurációs mintának. A kiszivárgott fájl működő ügyfélidentitást ad a birtokosának, amíg a kiszolgáló el nem kezdi elutasítani ezt az identitást, és a becsomagolás semmit nem tesz ezzel az ablakkal kapcsolatban. Ügyfelenként egy profilt bocsásson ki, hogy a visszavonás egyfájlos döntés maradjon, és a becsomagoló kulcsot az általa lehetővé tett kiszolgálókonfigurációtól külön mentse. Egyik szokás sem javít meg egy kompromittált profilt, de mindkettő eldönti, milyen gyorsan fékezhető meg a következő.

Hol ül az ellenőrző horog a kézfogásban

Az ellenőrző horog a TLS réteg felfedése előtt fut, és a feladata a becsomagolt blobban hordozott metaadatok vizsgálata. Megkapja azokat a metaadatokat plusz egy kis, dokumentált környezetet, és kevesebbel dolgozhat, mint egy hitelesítő horog. Annak feltételezése, hogy lát felhasználóneveket, munkamenet-állapotot vagy bővítményváltozókat, a szokásos módja annak, hogy ezt a horgot rosszul írják meg. Olvassa el a horog saját kézikönyvi szakaszát, ahelyett hogy egy másik hogtól kölcsönözne elvárásokat.

A kilépési állapota a döntés: a nullától eltérő eredmény elutasítja az ügyfelet, a nulla eredmény pedig engedi tovább a kézfogást. A szabályzatnak ezért ki kell mondania, mi történik, ha a metaadatok hiányoznak, nem elemezhetők vagy váratlanok. Először az elutasítási utat írja meg, aztán döntse el, mely értékek elfogadhatók.

tls-crypt-v2 /etc/openvpn/server/tcv2-server.key
tls-crypt-v2-verify /etc/openvpn/server/verify-client-metadata.sh

Ez a két sor a szabályzat felülete a kiszolgálón: az egyik a becsomagoló kulcsot nevezi meg, a másik az ügyfelet elbíráló programot. Minden érdekes a szkriptben él, amely verziókezelést és ugyanolyan felülvizsgálatot érdemel, mint bármely más hozzáférési szabály.

A fiók, a tanúsítvány és a vezérlőkulcs külön vonul ki

A vezérlőcsatorna korai elfogadása nem hitelesítés, mert a TLS-identitás ellenőrzése előtt és bármilyen fiókengedélyezés előtt történik. A fiók letiltása, a tanúsítvány visszavonása és az ügyfél vezérlőkulcsának elutasítása három művelet három mechanizmussal. Az a telepítés, amely ezek közül csak egyet hajt végre, réssel rendelkezik, nem szabályzattal. Hangolja össze a hármat szándékosan, és jegyezze fel, melyik lépés melyik jogosultságot gyakorolja.

Az időzítés a második megkülönböztetés. A megváltozott elfogadási lista az új kézfogásokra vonatkozik, míg a már létrehozott munkamenetek tovább futnak, amíg valami meg nem szünteti őket. Az új listán szereplő bejegyzések számát annak bizonyítékaként venni, hogy a régi munkamenetek véget értek, az az út, ahogyan egy eltávolított ügyfél órákig kapcsolva marad.

Az össze nem hangolt jogosultságok két lyukat hagynak, amelyeket a gyakorlatban könnyű megtalálni. Egy fiók le lehet tiltva, miközben a vezérlőkulcsa még mindig kézfogást nyit, és egy tanúsítvány visszavonható, miközben a metaadat-szabályzat még mindig beengedi ugyanazt az ügyfelet. Mindkettő ugyanaz a hiba különböző helyeken, mert az üzemeltető egy listát tekintett a teljes jogosultságnak. Tegye egymás mellé a három listát az eltávolítás idején, és a hiba láthatóvá válik.

Profil kibocsátása és visszavonása

A kibocsátás a könnyű fele: hozza létre az ügyfélkulcsot az elfogadó oldalon, adja a profilt pontosan egy tulajdonosnak, tartsa korlátozottan a becsomagoló anyagot, és futtassa ugyanazt az ellenőrző programot minden elfogadó kiszolgálón. Az olcsó belépés az egész csoport tulajdonsága, nem a legújabb gépé. Egy régebbi vagy lazább szkripttel rendelkező második kiszolgáló csendben a telepítés leggyengébb útjává válik.

A visszavonáshoz a három lépés szándékos sorrendben kell. Tagadja meg az ügyfelet az ellenőrző horogban, hogy az új kézfogások meghiúsuljanak, vonja vissza a tanúsítványát, ha PKI-t használnak, és tiltsa le a fiókot, hogy a későbbi engedélyezésnek ne legyen mit engedélyeznie. Ezután szüntesse meg a régi elfogadás által engedélyezett munkameneteket, mert azok a három közül egyiket sem veszik észre. Gyakorolja a sorrendet egy ügyfélen, amelyet megengedhet magának, hogy eltörjön.

A profilban lévő metaadatok bemenetek ehhez a szabályzathoz, nem bizonyítékai annak, hogy a hozzáférés-vezérlés már létezik. Az OpenVPN 2.6 tervezési dokumentuma leírja az objektumokat és az általuk húzott határt, míg érvényesítésük az üzemeltetőnél marad.

Kapcsolódó cikkek