A jegyzeteiben van egy common name és egy cím, valamint három parancs, amelyek mindegyike úgy tűnik, hogy eltávolít egy ügyfelet. Csak egy teszi azt, amit szeretne, és a választás attól függ, hogy a most futó munkamenetet kell-e befejeznie, a következő bejelentkezést kell-e elutasítania, vagy a csatlakozás jogát kell-e teljesen elvennie. Olvassa el az identitást, amely valóban a birtokában van, mielőtt bármihez hozzányúlna, mert az OpenVPN-készlet később ugyanazt az alagútcímet egy másik munkamenetnek adja.

Milyen identitása van valójában

A 3-as verziójú állapotfájl a szokásos kiindulópont. A CLIENT_LIST szakasz tartalmazza a common name-et, a valódi címet, a bájtszámlálókat és a kapcsolódási időt; a ROUTING TABLE szakasz egy virtuális címet rendel egy common name-hez az utolsó hivatkozás időbélyegével. A common name a stabil identitás. A virtuális cím egy kiosztás, és a NAT mögötti valódi cím munkamenetek között változhat anélkül, hogy a kiszolgálón bármi változna.

A felügyeleti interfész hasonló nézetet kínál a status parancsán keresztül, és munkamenetenként hozzáad egy ügyfél-azonosítót. Ezt az azonosítót várja a client-kill, és ez nem az alagútcím. Ha tudnia kell, melyik common name melyik címet kapta a kapcsolódás pillanatában, a client-connect szkript környezete mindkettőt tartalmazza, a megbízható külső címmel együtt, de ez a szkript OpenVPN-felhasználóként fut, és írható naplóútvonalra van szüksége.

What you holdWhere it came fromWhat it can act on
Common nameCLIENT_LIST, or the auth hookkill, and credential revocation
Client IDstatus on the management socketclient-kill, that one session
Tunnel addressROUTING TABLE, client-connect environmentNothing durable, the address is recycled

Azonnali kirúgás, elutasítás belépéskor, végleges visszavonás

A felügyeleti interfész mindkét eltávolító parancsa munkamenet-művelet. A kill egy common name-et vagy valódi címet és portot vesz, a client-kill az ügyfél-azonosítót veszi, és azonnal befejezi azt a példányt. Egyik sem blokk: egy kirúgott ügyfél érvényes tanúsítvánnyal és jelszóval másodpercek alatt újracsatlakozik, ami rendben van tesztpeer újrahasznosításakor, és haszontalan, ha elloptak egy laptopot.

A client-deny másfajta döntés. Általában hitelesítési vagy client-connect hookból adják ki, és indoklással utasítja el a munkamenetet, ezért olyan szabályzathoz illik, amely elutasítja a bejelentkezést, nem pedig olyanhoz, amely megszakít egy kapcsolatot. A dokumentáció arra is figyelmeztet, hogy a TLS-újratárgyalás alatt kiadott elutasítás érvényteleníti az újratárgyalt kulcsot, miközben a meglévő munkamenet tovább futhat az átmeneti ablak bezárásáig. Ha a követelmény az, hogy az ügyfél most azonnal eltűnjön, a dokumentált válasz a client-kill.

A tartós eltávolítás mindezek alatt van. Vonja vissza a tanúsítványt, és győződjön meg arról, hogy a crl-verify olyan listára mutat, amelyet a kiszolgáló valóban újratölt, tiltsa le az ügyfélspecifikus konfigurációs fájlt a ccd könyvtárban, vagy tiltsa le a fiókot abban a háttérrendszerben, amelyet a hitelesítési hook lekérdez. A visszavonás sem azonnali: az alapértelmezett reneg-sec beállításokkal egy létrejött munkamenet tovább futhat, amíg újra nem tárgyal, tehát a munkamenet-művelet és a hitelesítőadat-művelet kiegészítik egymást, nem alternatívák.

Szabad a felügyeleti socket?

A felügyeleti interfész egyszerre egy ügyfelet szolgál ki. Ha egy GUI vagy egy monitorozó daemon már tartja a kapcsolatot, a szkriptje nem tud mellé csatlakozni, és az ügyféltől függően inkább kilökheti a meglévőt, mintsem tisztán meghiúsuljon. A jelszava nyílt szövegben utazik ezen a socketen, ezért helyi címre vagy unix socketre való, soha nem nyilvános interfészre.

Amikor nem tudja átvenni a socketet, még mindig vannak lehetőségei, és mindegyik lassabb. Először engedje el a GUI munkamenetét, ha az az irányítása alatt áll, vagy fogadja el a hitelesítőadat-réteg útvonalát, és várja meg a következő újratárgyalást. Amit nem szabad tennie, az a szolgáltatás újraindítása egy ügyfél eltávolítása érdekében, mert az minden más munkamenetet is befejez, és megsemmisíti ennek a munkamenetnek az állapotfájl-bizonyítékait.

A sorrend, amelyet éles kiszolgálón futtatok

Csatlakozzon, olvassa ki az aktuális állapotot, cselekedjen az éppen kiolvasott azonosító alapján, majd olvassa ki újra. A dokumentumból másolt értékek a leggyakoribb módjai annak, hogy rossz embert öljön meg.

status                     # note the client ID and common name
client-kill 3              # end that session now
kill Test-Client           # alternative: by common name
status                     # confirm the session is gone

A fenti név és szám helyőrzők, és az azonosítók újra felhasználhatók, miután más ügyfelek lecsatlakoztak. Mielőtt bármit késznek írna le, erősítse meg, hogy a sor hiányzik, és ellenőrizze, hogy a csatlakozott ügyfelek száma eggyel, nem pedig többel mozdult el.

Erősítse meg, hogy távol maradt

Jegyezze fel a common name-et, az alagútcímet, a külső címet és az eltávolítás percét. Ha ugyanaz a common name egy perccel később újra megjelenik, a munkamenet-művelet működött, a hitelesítőadat-réteg pedig nem, ami teljesen más javítás, mint egy parancsé, amely soha nem lépett életbe.

Ezután teszteljen az ügyfél oldaláról. A visszavont tanúsítványnak el kell buknia a következő kézfogáson; ha még mindig csatlakozik, a CRL-t egyáltalán nem olvassák, és ez az a megállapítás, amelyet érdemes jelenteni. A befejezendő művelet szerint válasszon, erősítse meg egy második status-zel, és javítsa a hitelesítőadat-réteget, amikor a válasznak tovább kell tartania, mint a munkamenetnek.

Kapcsolódó cikkek