Du prisijungimo patikrinimai nėra du veiksniai: VPN ir RADIUS
Vietinės paskyros patikrinimas ir RADIUS yra du patvirtinimai, o ne du veiksnių tipai. Palyginkite AND, OR ir atsarginę politikas, tada išbandykite derinį.
Antro autentifikavimo backend'o pridėjimas prie VPN tinklų sietuvos atrodo kaip antro veiksnio pridėjimas. Paprastai tai prideda antrą patikrinimą, kuris yra kitas objektas su kitais gedimo režimais. Ar abu turi pavykti, ką kiekvienas įrodo ir kas nutinka, kai vienas nepasiekiamas, yra trys atskiri sprendimai. Suklyskite ir sietuva demonstracijoje bus griežtesnė, o sutrikimo metu silpnesnė.
Ką antras backend'as iš tikrųjų įrodo
Vietinės paskyros paieška įrodo, kad vardas egzistuoja duomenų bazėje ir kad slaptažodis jį atitiko. RADIUS mainai įrodo, kad RADIUS serveris grąžino Access-Accept už gautus atributus. Nė vienas teiginys nemini veiksnio tipo, nes abu tikrina žinias. Ir NIST skaitmeninės tapatybės gairės skaičiuoja skirtingus veiksnių tipus ir jų autentifikatorius, o ne serverius ar raginimus.
Yra teisėtas dizainas, kuriame dalyvauja abi sistemos. Centrinė paslauga gali autentifikuoti asmenį, o sietuva savarankiškai tikrina, ar ta paskyra turi teisę į šį tunelį. Tai autorizacija šalia autentifikavimo, o vadinimas tuo dviveiksniu supainioja politikos patikrinimą su valdymo įrodymu.
RADIUS gali nešti tikrą antrą veiksnį, kai stovi prieš kažką, kas vieną patikrina, pavyzdžiui, push patvirtinimą ar aparatinį raktą. Vokas nepasako, kokius autentifikatorius pateikė naudotojas, todėl skaitykite backend'o politiką, o ne sietuvos etiketę.
AND, OR ir atsarginė yra skirtingi produktai
Prieš lygindami įgyvendinimus, nuspręskite, ką abu reiškia jūsų reikalavime. AND politika reikalauja, kad praeitų kiekvienas įvardytas patikrinimas, OR politika priima tą, kuris pavyksta, o atsarginė antrą bando tik nurodytomis gedimo sąlygomis. Šie trys sutrikimo metu elgiasi priešingai, ir paprastai tik vienas jų yra tai, ką turėjo omenyje peržiūra.
Dviejų backend'o įrašų pridėjimas prie konfigūracijos ekrano neatskleidžia, kokią politiką produktas įgyvendina. Kai kurios sietuvos iš eilės sujungia papildinius ir sustoja ties pirmu atmetimu, o tai yra AND tik kai kiekvienas papildinys privalomas. Kitos vietinę paskyrą traktuoja kaip perrašymą, o tai centrinį sutrikimą paverčia apėjimu. Patikimas atsakymas yra dokumentuotas neigiamas testas kiekvienam keliui, atliktas su jūsų diegiamu build'u.
Atsarginė nusipelno daugiausia įtarumo, nes ji egzistuoja tam, kad veiktų toliau, kai kažkas sugedę. Atsarginė, kuri priima vietinį slaptažodį visada, kai RADIUS nepasiekiamas, centrinę politiką pavertė antromis, silpnesnėmis durimis.
OpenVPN dvigubas patikrinimas yra konkretus atvejis
Bendruomenės OpenVPN 2.6 reikalauja ir kliento sertifikato, ir sukonfigūruoto auth-user-pass-verify scenarijaus, kai abu įjungti. Tai dokumentuotas AND tarp sertifikato patikrinimo ir prisijungimo duomenų scenarijaus, ir tai tikrai du patikrinimai. Tai vis dar nėra automatiškai du veiksnių tipai, nes scenarijus gali tikrinti tik slaptažodį.
Derinys taip pat palieka atvirą susiejimo klausimą. Sertifikatas paprastai identifikuoja įrenginį, o prisijungimo duomenys identifikuoja asmenį, ir niekas numatytojoje eigoje nereikalauja, kad abu nurodytų tą patį subjektą. Nuspręskite, kurios poros leidžiamos, tada įtvirtinkite tą žemėlapį patikrinimo scenarijuje arba vėlesniame autorizacijos žingsnyje.
Tik sertifikato režimas yra vienas patikrinimas, paremtas raktu, kuris gali būti arba nebūti apsaugotas PIN. PIN tą patį prisijungimo duomenį paverčia žiniomis plius valdymu tik jei raktas be jo negali būti naudojamas. Palikus raktą diske neužšifruotą, antroji dalis susitraukia iki failo leidimo.
Įrenginių gamintojai stato savo vamzdyną, dažnai PAM modulį ar RADIUS papildinį už interneto konsolės. Bendruomenės elgsena yra nuoroda, kaip atrodo dvigubi patikrinimai, o ne aprašymas, kaip įrenginys juos sujungia.
Patikrinkite derinį savo sietuvoje
Perskaitykite konfigūraciją prieš pasitikėdami konsolės santrauka. Politiką lemiančios eilutės yra sertifikato režimas, prisijungimo duomenų scenarijus ir papildinių tvarka.
grep -E 'verify-client-cert|auth-user-pass-verify|plugin' /etc/openvpn/server.conf
openssl x509 -in /etc/openvpn/pki/issued/client01.crt -noout -subject -serial
radtest alice 'wrong-password' 127.0.0.1 0 testing123
grep parodo, ar reikia sertifikato, ir koks scenarijus vykdomas po jo, o tvarka svarbesnė, nei leidžia manyti pavadinimai. Sertifikato išrašas duoda tapatybę, kurią matys sietuva, įskaitant CN ir serijos numerį, kurių reikia susiejimo žemėlapiui. RADIUS testas yra neigiamas atvejis: neteisingas slaptažodis turi duoti Access-Reject, o teisingas Access-Accept. Jei atmesti prisijungimo duomenys vis tiek duoda sesiją, scenarijus visai ne autentifikavimo kelyje.
Tada paleiskite sutrikimo atvejį laboratorinėje instancijoje: sustabdykite privalomą backend'ą ir prisijunkite galiojančiais duomenimis. Tikėtinas rezultatas yra atmetimas, o viskas kita yra atsarginė politika, kurios niekas nedokumentavo.
Parašykite reikalavimą kaip neigiamus atvejus
Naudojamas reikalavimas įvardija įrodymus, paskyras, kurioms leidžiama juos pateikti, ir rezultatą, kai trūksta tikrintojo. Jis taip pat nurodo leidžiamą poravimą tarp įrenginio tapatybės ir asmens tapatybės. Tai tiksliau nei produkto pavadinimai pirkimo užsakyme, ir tai galima išbandyti.
Priėmimas turėtų apimti keturis atmetimus: netinkamą vietinę paskyrą, trūkstamą privalomą įrodymą, negaliojantį antrą veiksnį ir nepasiekiamą privalomą backend'ą. Kiekvienam atmetimui reikia žurnalo eilutės, kuri jį atskiria nuo kitų, kitaip kitas incidentas prasideda spėliojimais. Užrašykite, kuris komponentas priėmė kiekvieną sprendimą, nes sietuva, RADIUS serveris ir katalogas kaltins vieni kitus.
Pakartokite keturis atmetimus po bet kokio papildinio ar programinės įrangos pakeitimo. Jie pigūs, o politika, kurią jie saugo, yra ta dalis, kurią užpuolikas tikrina pirmiausia.