RouterOS lahko doseže NPS s prijavo OpenVPN in je vseeno zavrnjen, običajni vzrok pa sta dve nastavitvi, katerih imeni obe zvenita kot preverjanje pristnosti. Ena izbere kriptografski povzetek za tunel; druga odloči, kako so uporabnikove poverilnice predstavljene RADIUSu. Sprememba povzetka nikoli ne spremeni zahteve PAP v MS-CHAPv2, ne glede na to, kolikokrat se storitev znova zažene. Spodnji kontrolni seznam loči obe, nato pa sledi eni neuspešni prijavi skozi politiko NPS, ki jo je ocenila.

Korak 1: preberite obe nastavitvi, preden katero spremenite

Natisnite veljavno konfiguracijo strežnika OpenVPN na usmerjevalniku, ki zaključi tunel, ne iz varnostne kopije ali kopirane objave na forumu. Dve polji, ki vas zanimata, sta običajno v istem meniju in se bereta, kot da bi bili alternativi. Nista: eno se nanaša na podatkovni kanal, drugo na izmenjavo poverilnic.

/interface ovpn-server server print
/interface ovpn-server server export

Polje auth našteje povzetke, kot sta sha1 in sha256, in nadzoruje HMAC, ki preverja pristnost paketov tunela. Polje user-auth-method izbere pap ali mschap2 in odloči, kako usmerjevalnik predstavi uporabnikove poverilnice RADIUSu. Sprememba povzetka ne more spremeniti drugega vedenja, zato ista zavrnitev preživi vsako prilagoditev prvega.

Ustavite se tukaj, če vaša izdaja user-auth-method sploh ne izpostavi. Starejše gradnje RouterOS ga morda ne ponujajo na strežniku OpenVPN, popravek pa sodi v izdajo, ki jo lahko podpirate, ne v ukaz, kopiran iz novejše.

Korak 2: poiščite politiko, ki je prijavo dejansko zavrnila

Na strani NPS se zahteva za povezavo ocenjuje glede na omrežne politike, metoda preverjanja pristnosti, navedena v ustrezni politiki, pa mora biti ena od tistih, ki jih je odjemalec dejansko ponudil. Povežite eno neuspešno prijavo po času in uporabniku, namesto da berete zbirno število. Varnostni dnevnik zabeleži odobrene in zavrnjene zahteve s kodo razloga, kar vam pove veliko več kot splošna vrstica napake usmerjevalnika.

Get-WinEvent -LogName Security -MaxEvents 200 |
  Where-Object { $_.Id -in 6272,6273 } |
  Format-List TimeCreated,Id,Message

V dogodku preberite tri stvari: ime ustrezne politike, metodo preverjanja pristnosti in kodo razloga. Politika, ki zahteva MS-CHAPv2, zavrne zahtevo PAP tudi pri pravilnem geslu, politika, ki zahteva domenski račun, pa zavrne lokalnega. Vnos odjemalca RADIUS se mora ujemati tudi z izvornim naslovom usmerjevalnika, sicer se zahteva zavrže, preden se pregleda katera koli politika. Nič od tega se ne pojavi v dnevniku OpenVPN.

Ustavite se tukaj, če zahteva nikoli ne doseže NPS. To je težava skupne skrivnosti, naslova odjemalca ali UDP 1812, in sprememba metod preverjanja pristnosti je ne bo odpravila.

Korak 3: spremenite eno metodo na obeh straneh

Če je odobrena zasnova MS-CHAPv2, jo nastavite na usmerjevalniku in potrdite, da jo ustrezna politika sprejme. Spremenite eno stran, znova preizkusite in nato spremenite drugo; če spremenite obe hkrati, ne boste mogli reči, katera je bila pomembna.

/interface ovpn-server server set user-auth-method=mschap2
/interface ovpn-server server print
/log print where topics~"radius"

Na NPS ne omogočite vsake šibkejše metode, da bi napaka izginila. Zaledni sistem mora imeti gradivo, ki ga lahko izbrana metoda preveri: MS-CHAPv2 potrebuje dostop do gesla ali domene, politika pa tega gradiva ne more izmisliti. Razširitev politike razširi tudi, kaj lahko napadalec poskusi proti istemu računu. Zapišite metodo, ime politike in referenco spremembe skupaj, da naslednja oseba podeduje odločitev in ne ugibanja.

Pustite preverjanje potrdila tunela natanko tako, kot je bilo. Metoda poverilnic ne nadomešča identitete strežnika, zniževanje kontrol TLS, da bi test uspel, pa zamenja eno težavo za slabšo.

Korak 4: preizkusite tri prijave in eno dovoljenje

Preizkusite dovoljenega uporabnika, napačno geslo in izključenega uporabnika, vsakega v novi seji. Prvi dokaže pot, drugi dokaže, da je preverjanje poverilnic resnično, tretji pa dokaže, da politika še vedno izključuje tiste, ki jih mora. Predpomnjena seja lahko skrije vse tri, zato se med poskusi odklopite.

/log print where topics~"ovpn"
/radius monitor 0

Uspešno preverjanje pristnosti ni konec kontrolnega seznama. Preverite naslov, ki ga je prejel odjemalec, in vire, ki jih ta naslov lahko doseže, saj se lahko uporabnik pravilno overi in vseeno pristane v napačnem bazenu. Če je dodeljeni naslov napačen, je težava v profilu ali atributih odgovora RADIUS, ne v metodi. Potrdite oboje, preden zaprete zahtevek.

Kontrolni seznam je končan, ko nastavitev usmerjevalnika in politika NPS navajata isto metodo, dovoljen uporabnik se poveže v novi seji, napačno geslo je zavrnjeno, izključen uporabnik ostaja izključen in dodeljeni naslov ustreza predvidenemu bazenu. Vse manj prepusti naslednjo prijavo naključju.

Sorodni članki