Dostop VPN za servisni račun: potrdilo ali skupna prijava
Primerjajte potrdilo stroja s shranjenim geslom za nenadzorovani dostop VPN in pravo mejo dovoljenj vstavite v pravilnik, ki se izvede po prijavi.
Skoraj vsako nenadzorovano nastavitev VPN pokrijeta dve zasnovi: skupna človeška prijava, shranjena v skriptu, ali potrdilo stroja, vezano na gostitelja. Odpovedujeta na različnih mestih in to je pomembnejše od hitrosti nastavitve. Shranjeno geslo se zlomi, ko ga lastnik spremeni ali odide; potrdilo se zlomi, ko poteče ali ko je gostitelj ponovno zgrajen brez ključa. Trije pogoji odločajo, kateri strošek lahko nosite, in nobena zasnova ničesar ne omejuje, dokler tega ne stori pravilnik o pooblastitvi.
Začnite pri nalogi, ne pri računu
Naloga določa mejo: katere cilje, katere storitve, ob katerih urah, kako dolgo lahko traja seja. Pot tunela je le polovica te meje. Prehod odloča, ali je seja dovoljena; vir za njim odloča, kaj seja lahko počne. Najprej napišite seznam, z imenovanim lastnikom, ker ga morata obe zasnovi identitete izpolniti.
Med pisanjem imejte preverjanje pristnosti in pooblastitev ločeno. Preverjanje pristnosti odgovarja, kdo se povezuje; pooblastitev odgovarja, kam lahko seja pozneje doseže. RADIUS prenaša drugi del kot atribute, kot so Filter-Id, Framed-IP-Address, Session-Timeout in Class, prehod pa jih pripne, ko prijava uspe. Zasnova, ki zamenja prijavo in pooblastitev pusti pri miru, ni ničesar omejila.
Skupna človeška prijava: geslo postane meja
Ponovna uporaba človeškega računa je najhitrejša pot in tista, ki se najslabše stara. Poverilnica je geslo, zato konča v skriptu, okoljski datoteki in konfiguraciji razporejevalnika, vsaka kopija pa potrebuje rotacijo. Ko ga lastnik spremeni v petek, naloga ob naslednjem zagonu odpove in nihče ne gleda.
MFA je mesto, kjer ta zasnova običajno propade. Skript ne more odgovoriti na zahtevo push, zato je račun izključen iz pravilnika, in to je natanko račun, ki bi ga napadalec izbral. Izjeme, obhodi za zaupanja vredne lokacije in oprostitve po računu se množijo, nobena pa ni vidna naslednji osebi, ki bere nastavitve najemnika.
Pripisovanje je drugi strošek. Vsaka seja v dnevniku prehoda nosi isto uporabniško ime, zato nočne sinhronizacije ni mogoče ločiti od dela osebe, ki jo je napisala, in preklic naloge pomeni preklic te osebe.
Potrdilo stroja: identiteta, vezana na gostitelja
Potrdilo spremeni vprašanje iz tega, kaj račun ve, v to, kaj gostitelj je. Pri EAP-TLS odjemalec predloži potrdilo in dokaže posedovanje ustreznega zasebnega ključa; strežnik pravilnikov preslika subjekt ali računalniški račun v skupino in uporabi pravilnik te skupine. Brez poziva, brez skupne skrivnosti v besedilni datoteki.
Meja, ki jo ustvari, je ožja, kot ljudje pričakujejo. Potrdilo preveri pristnost gostitelja, ne naloge, in vsakdo s pravicami root ali lokalnega skrbnika lahko uporabi ta ključ na tem gostitelju. Ključ hranite tam, kjer ga platforma ščiti: neizvozljiv v shrambi potrdil Windows, s podporo TPM, kjer profil to dovoljuje, ali datoteka 0600 v lasti root v Linuxu. Kompromitiran gostitelj je kompromitirana poverilnica.
Potek veljavnosti je ponavljajoča se okvara. Potrdilo, ki poteče v nedeljo, ustavi nalogo v nedeljo, prehod pa običajno sporoči splošno napako preverjanja pristnosti, namesto da bi navedel datum. Datume preverite z gostitelja naloge kot del navodil za izvajanje:
openssl x509 -in client.pem -noout -subject -issuer -dates
ipsec listcerts
Preklic potrebuje pot, ki jo prehod preveri. OpenVPN bere CRL prek možnosti crl-verify, strongSwan pa je odvisen od CRL ali OCSP glede na to, kako je zgrajen profil povezave. Če ni povezano nobeno od obeh, odstranitev gostitelja pomeni čakanje, da potrdilo poteče.
Trije pogoji, ki odločijo med njima
Primerjavo izvedite z platformo, ki jo imate, ne z referenčno zasnovo.
Prvi pogoj: ali lahko prehod pooblasti strojno identiteto? Če samo preslika uporabniško ime RADIUS v uporabnika imenika, potrdilo preveri gostitelja in se nato ustavi pri pooblastitvi. Drugi pogoj: ali naloga potrebuje dostop do virov, ki ga prinaša le uporabniški račun, na primer preslikana skupna mapa ali licenca na sedež? Takrat strojna identiteta ne more nadomestiti, in pošten odgovor je namenski uporabniški račun z omejenim pravilnikom. Tretji pogoj: kdo lahko zamenja poverilnico brez človeka v zanki? Samodejno vpisovanje naredi potrdila poceni za vzdrževanje; geslo, ki ga pozna ena oseba, ne.
| Constraint | Machine certificate | Dedicated user account with stored secret |
|---|---|---|
| Unattended login | Private key proof, no prompt | Only if the account is exempted from MFA |
| Resource expects a user identity | Works only when the resource accepts computer accounts | Matches the access a person would have |
| Rotation | Re-enrollment, often automated | Secret change plus redeploy of every copy |
| Revocation speed | Tied to CRL or OCSP refresh | Disable the account, immediate |
Tabelo berite kot seznam stroškov, ne kot lestvico. Stolpec s shranjeno skrivnostjo zmaga pri hitrosti preklica in pri združljivosti z viri, ki razumejo le uporabniške račune; stolpec s potrdilom zmaga pri rotaciji in pri tem, da ne oslabi MFA, da bi skript deloval.
Mejo vstavite v pravilnik, po preverjanju pristnosti
Ne glede na izbrano identiteto meja dovoljenj pripada pravilniku, ki se izvede po preverjanju pristnosti. V NPS se omrežni pravilniki ocenjujejo po vrsti in prvi pravilnik, ki ustreza vsem pogojem, uveljavi svoje nastavitve, zato širok pravilnik, postavljen nad ozkim, odloči izid, ne glede na to, kaj predloži odjemalec. Microsoft opisuje model pogojev in nastavitev v svojem pregledu pravilnikov NPS.
Nalogi dajte lastno skupino ali pogoj pravilnika, ki temelji na nečem, kar nosi strojna identiteta: predloga potrdila, identifikator klicne postaje ali naslov iz namenskega bazena. Nato sejo omejite z atributi: Filter-Id za vlogo, v katero jo prehod preslika, kratek Session-Timeout, da se zataknjena naloga ponovno preveri, namesto da bi držala sejo več dni, in Framed-IP-Address iz bazena, ki ga na drugi strani filtrira požarni zid. Pooblastitev aplikacije ostaja ločena: tunel do strežnika podatkovne baze ni dovoljenje za branje tabele v njej.
Preverite zavrnitve, nato načrtujte odstranitev
Dostop, ki deluje, ne dokazuje ničesar o najmanjših pravicah. Namesto tega preizkusite zavrnitve: povežite se z identiteto naloge in segajte po cilju zunaj seznama, odprite drugo sočasno sejo, če naj prehod dovoli samo eno, in ponovite prijavo po preklicu poverilnice.
Nato potrdite isto sejo na dveh mestih. Dnevnik prehoda kaže identiteto, ki se je preverila; dnevnik strežnika pravilnikov kaže, kateri pravilnik se je ujemal in katere atribute je vrnil. Pri OpenVPN strežnik zabeleži skupno ime potrdila, ipsec statusall na strongSwan pa izpiše vzpostavljen tunel z identiteto v uporabi. Če se dnevnika ne strinjata glede identitete, se pravilnik ujema z nečim drugim, kot predvidevate.
Odstranitev spada v zasnovo, ne v čistilni sprint. Zapišite vse, kar je treba izbrisati (potrdilo ali račun, članstvo v skupini, omrežni pravilnik, vnos v bazenu, pravilo požarnega zidu na cilju) in to izvedite enkrat, dokler je nalogo lahko obnoviti.
Če začenjate danes, delajte v tem vrstnem redu: napišite seznam virov, izberite identiteto s tremi pogoji, vstavite mejo v pravilnik in vadite eno zavrnitev, preden naloga zaživi.