Kaks lahendust katavad peaaegu iga järelevalveta VPN-i seadistuse: skriptis hoitav jagatud inimlik sisselogimine või hostiga seotud masinasertifikaat. Need ebaõnnestuvad eri kohtades, mis loeb rohkem kui seadistamise kiirus. Salvestatud parool puruneb, kui selle omanik selle muudab või lahkub; sertifikaat puruneb, kui see aegub või kui host ehitatakse ilma võtmeta uuesti üles. Kolm tingimust otsustavad, millist hinda te kanda saate, ja kumbki lahendus ei piira midagi enne, kui seda teeb autoriseerimispoliitika.

Alustage ülesandest, mitte kontost

Ülesanne määratleb piiri: millised sihtkohad, millised teenused, millised tunnid, kui kaua võib seanss kesta. Tunnelimarsruut on ainult pool sellest piirist. Lüüs otsustab, kas seanss on lubatud; selle taga olev ressurss otsustab, mida seanss teha saab. Kirjutage kõigepealt nimekiri, nimetatud omanikuga, sest mõlemad identiteedilahendused peavad sellele vastama.

Hoidke autentimine ja autoriseerimine lahus, kui seda kirja panete. Autentimine vastab, kes ühendub; autoriseerimine vastab, mida seanss pärast jõuda tohib. RADIUS kannab teist osa atribuutidena nagu Filter-Id, Framed-IP-Address, Session-Timeout ja Class, ning lüüs lisab need, kui sisselogimine õnnestub. Lahendus, mis vahetab sisselogimise ja jätab autoriseerimise puutumata, ei ole midagi piiranud.

Jagatud inimlik sisselogimine: paroolist saab piir

Inimkonto korduskasutamine on kiireim tee ja see, mis vananeb kõige halvemini. Volitus on parool, nii et see jõuab skripti, keskkonnafaili ja planeerija konfiguratsiooni ning iga koopia vajab rotatsiooni. Kui omanik muudab seda reedel, ebaõnnestub töö järgmisel käivitusel ja keegi ei vaata.

MFA on koht, kus see lahendus tavaliselt kokku variseb. Skript ei saa push-küsimusele vastata, seega jäetakse konto poliitikast välja, ja see on täpselt see konto, mille ründaja valiks. Erandid, usaldusväärse asukoha möödaviimised ja kontopõhised vabastused korduvad ning ükski neist ei ole nähtav järgmisele inimesele, kes rentniku seadeid loeb.

Omistamine on teine kulu. Iga seanss lüüsi logis kannab sama kasutajanime, seega öist sünkroonimist ei saa eristada selle kirjutanud inimese tööst, ja töö tühistamine tähendab selle inimese tühistamist.

Masinasertifikaat: hostiga seotud identiteet

Sertifikaat muudab küsimuse sellest, mida konto teab, selleks, mis host on. EAP-TLS-i puhul esitab klient sertifikaadi ja tõestab vastava privaatvõtme valdamist; poliitikuserver kaardistab subjekti või arvutikonto grupile ja rakendab selle grupi poliitikat. Ei küsimust, ei tekstifailis istuvat jagatud saladust.

Loodud piir on kitsam, kui inimesed ootavad. Sertifikaat autentib hosti, mitte ülesannet, ja igaüks, kellel on root- või kohalikud administraatoriõigused, saab seda võtit sellel hostil kasutada. Hoidke võtit seal, kus platvorm seda kaitseb: mitteeksporditav Windowsi sertifikaadihoidlas, TPM-i toega seal, kus profiil lubab, või rootile kuuluv fail 0600 Linuxis. Hosti kompromiteerimine on volituse kompromiteerimine.

Aegumine on korduv tõrge. Pühapäeval aeguv sertifikaat peatab töö pühapäeval ja lüüs teatab tavaliselt üldisest autentimistõrkest, selle asemel et kuupäeva nimetada. Kontrollige kuupäevi tööhostist runbooki osana:

openssl x509 -in client.pem -noout -subject -issuer -dates
ipsec listcerts

Tühistamine vajab teed, mida lüüs kontrollib. OpenVPN loeb CRL-i valiku crl-verify kaudu ja strongSwan sõltub CRL-ist või OCSP-st vastavalt sellele, kuidas ühendusprofiil on üles ehitatud. Kui kumbki ei ole ühendatud, tähendab hosti eemaldamine sertifikaadi aegumise ootamist.

Kolm tingimust, mis nende vahel otsustavad

Võrrelge platvormiga, mis teil on, mitte referentslahendusega.

Esimene tingimus: kas lüüs saab masinidentiteeti autoriseerida? Kui see kaardistab ainult RADIUS-i kasutajanime kataloogikasutajale, autentib sertifikaat hosti ja jääb siis autoriseerimise juures kinni. Teine tingimus: kas töö vajab ressursile juurdepääsu, mida kannab ainult kasutajakonto, näiteks kaardistatud jagatud kaust või kohtade kaupa litsents? Siis ei saa masinidentiteet asendada ja aus vastus on eraldatud kasutajakonto kitsa poliitikaga. Kolmas tingimus: kes saab volitust ilma inimese osaluseta rotatsioonida? Automaatne registreerimine teeb sertifikaadid odavaks hoida; parool, mida teab üks inimene, mitte.

ConstraintMachine certificateDedicated user account with stored secret
Unattended loginPrivate key proof, no promptOnly if the account is exempted from MFA
Resource expects a user identityWorks only when the resource accepts computer accountsMatches the access a person would have
RotationRe-enrollment, often automatedSecret change plus redeploy of every copy
Revocation speedTied to CRL or OCSP refreshDisable the account, immediate

Lugege tabelit kulude loendina, mitte pingereana. Salvestatud saladuse veerg võidab tühistamise kiiruses ja ühilduvuses ressurssidega, mis mõistavad ainult kasutajakontosid; sertifikaadi veerg võidab rotatsioonis ja selles, et MFA-d ei nõrgendata skripti tööle saamiseks.

Asetage piir poliitikasse, pärast autentimist

Ükskõik millise identiteedi valite, kuulub õiguste piir poliitikasse, mis käivitub pärast autentimist. NPS-is hinnatakse võrgupoliitikaid järjekorras ja esimene poliitika, mis vastab igale tingimusele, rakendab oma seaded, seega kitsa kohal asuv lai poliitika otsustab tulemuse sõltumata sellest, mida klient esitab. Microsoft dokumenteerib tingimuste ja seadete mudelit oma NPS-i poliitikate ülevaates.

Andke tööle oma grupp või poliitikatingimus, mis põhineb millelgi, mida masinidentiteet kannab: sertifikaadimall, kutsuja jaama identifikaator või aadress sihtotstarbelisest basseinist. Seejärel piirake seanssi atribuutidega: Filter-Id rolli jaoks, millele teie lüüs selle kaardistab, lühike Session-Timeout, et takerdunud töö end uuesti autendiks, mitte ei hoiaks seanssi päevade kaupa, ja Framed-IP-Address basseinist, mida teisel pool tulemüüriga filtreerite. Rakenduste autoriseerimine jääb eraldi: tunnel andmebaasiserverini ei ole luba lugeda selle sees olevat tabelit.

Kontrollige keeldumisi, seejärel kavandage eemaldamine

Toimiv juurdepääs ei tõesta vähima õiguse kohta midagi. Testige hoopis keeldumisi: ühenduge töö identiteediga ja proovige jõuda sihtkohta, mis on nimekirjast väljas, avage teine samaaegne seanss, kui lüüs peaks lubama ainult ühte, ja korrake sisselogimist pärast volituse tühistamist.

Seejärel kinnitage sama seanss kahes kohas. Lüüsi logi näitab identiteeti, mis autentis; poliitikuserveri logi näitab, milline poliitika sobis ja millised atribuudid tagastati. OpenVPN-is salvestab server sertifikaadi üldnime ja strongSwani ipsec statusall trükib loodud tunneli kasutatava identiteediga. Kui kaks logi identiteedi osas ei nõustu, sobib poliitika millegi muu kui teie eeldatuga.

Eemaldamine kuulub lahendusse, mitte koristusspurti. Kirjutage üles kõik, mis tuleb kustutada (sertifikaat või konto, grupiliikmelisus, võrgupoliitika, basseini kirje, tulemüürireegel sihtmärgil) ja käivitage see üks kord, kui tööd on lihtne uuesti üles ehitada.

Kui alustate täna, töötage selles järjekorras: kirjutage ressursinimekiri, valige identiteet kolme tingimusega, asetage piir poliitikasse ja harjutage üht keeldumist enne, kui töö tööle läheb.

Seotud artiklid