Geslo je pravilno, račun je v skupini VPN, povezava pa je vseeno zavrnjena s sporočilom, ki ne omenja nobene politike. Ko se to zgodi na strežniku oddaljenega dostopa Windows, prvo mesto, ki ga pogledam, ni pravilo NPS, ampak en atribut Active Directory, ki ga nihče ne odpre: msNPAllowDialin, vrednost za zavihkom Dial-in. Ima tri stanja, tretje pa tiho preda odločitev drugam. Največkrat ga nihče ni spremenil namerno: račun je bil kloniran iz predloge ali ustvarjen s skriptom, ki je pred leti zapisal izrecno zavrnitev in nikoli ni bil ponovno pregledan.

Zavrnitev se lahko zgodi, preden se politika prebere

Windows preveri dovoljenje računa za klicanje, medtem ko sestavlja odločitev o avtorizaciji, zato izrecna zavrnitev pogovor konča zgodaj. Na odjemalcu vidite splošno napako preverjanja pristnosti, včasih po končani izmenjavi potrdil, in zato ljudje preživijo popoldne ob preizkušanju poverilnic, ki nikoli niso bile težava.

Nasprotni primer je prav tako zmeden. Račun, na katerem zastavica ni bila nikoli nastavljena, se lahko uspešno poveže, ker je politika to dovoljevala, nato pa se isti račun neha povezovati, ko nekdo iz nepovezanega razloga uredi pravilo NPS. Noben od teh dogodkov od zunaj ni videti kot sprememba dovoljenja za klicanje.

Tri stanja, in tretje je nevidno

TRUE dovoljuje klicanje, FALSE ga zavrača, NULL pa pomeni, da račun odgovor podeduje iz politike oddaljenega dostopa ali avtorizacije NPS. GUI prikaže to tretje stanje kot "Control access through NPS Network Policy", in bere se bolj kot neoznačeno polje kakor kot odločitev.

Zato štetje dovoljenih uporabnikov v konzoli ne pove skoraj ničesar. Podedovani račun je lahko danes dovoljen in jutri zavrnjen, ne da bi se ga kdorkoli dotaknil, FALSE račun pa se lahko še vedno poveže na strežnik, katerega politika je nastavljena tako, da prezre lastnosti klicanja uporabnika. Berite atribut in politiko skupaj, sicer revidirate polovico odločitve.

Izvozite zastavice, ne da bi izgubili podedovane račune

Zaženite izvoz na krmilniku domene ali na delovni postaji z modulom Active Directory in ohranite surovo datoteko kot dokaz, namesto da bi prepisovali povzetek:

Get-ADUser -Filter * -Properties msNPAllowDialin, LastLogonDate |
  Select-Object SamAccountName, Enabled, msNPAllowDialin, LastLogonDate |
  Sort-Object SamAccountName |
  Export-Csv -NoTypeInformation .\dialin.csv

En sam filter LDAP je lažje prilepiti v zapis o spremembi. Ta vrne le izrecna dovoljenja:

dsquery * -Filter "(&(objectCategory=person)(objectClass=user)(msNPAllowDialin=TRUE))" -Attr sAMAccountName

Nato znova poizvedujte brez klavzule o klicanju in poiščite račune, ki jim vrednost manjka. To so podedovani, običajno največja skupina v domeni, in če jih preskočite, se revizija spremeni v seznam tistih nekaj ljudi, ki se jih je kdo spomnil nastaviti ročno.

Ločite zastavico od skupinskega dostopa in zdravja računa

Atribut odgovarja na eno vprašanje: sme ta račun klicati. Ne pove ničesar o tem, ali oseba še dela tukaj, ali je račun omogočen ali ali v opombi pomoči uporabnikom leži skupno geslo. Izvoz povežite s stanjem omogočenosti, datumom zadnje prijave in članstvom v skupini, ki daje dostop do strežnika.

Ukrepate po kombinacijah. Onemogočen račun z TRUE je šum. Omogočen račun z TRUE, ki se ni prijavil eno leto, je kandidat za odstranitev. Podedovani račun v skupini VPN, ki ga nihče ne zna razložiti, pa je tista prava ugotovitev, ker nobena posamezna nastavitev ne zabeleži, zakaj je bil dodeljen.

Berite ga s krmilnika domene, proti kateremu se strežnik VPN dejansko preverja. Zamuda pri replikaciji lahko pokaže vrednost, ki jo je strežnik že zamenjal, in revizija, ki navaja zastarelo vrednost DC, bo izpodbijana v trenutku, ko bo kdo znova preveril.

Spremenite en račun in dokažite, da je sprememba prispela

Za odvzem dostopa nastavite atribut na FALSE, namesto da bi ga izbrisali. Brisanje vrne račun v dedovanje politike, ki mu lahko ob naslednji povezavi znova dovoli dostop, in sprememba je videti kot popravek, čeprav je v resnici drugačna odločitev:

dsmod user "CN=Jane Doe,OU=Staff,DC=corp,DC=example" -allowDialin no
Set-ADUser -Identity jdoe -Clear msNPAllowDialin

Druga vrstica je ponastavitev dedovanja, namerno ločena, da si nihče ne zameša obeh operacij. Nato potrdite iz druge seje, znova preberite atribut in preverite obračunske dogodke NPS za zavrnitev, namesto da bi zaupali osvežitvi konzole.

Na koncu zapišite, kateri mehanizem ima odločitev za vsako storitev oddaljenega dostopa. Če politika prezre lastnosti klicanja uporabnika, je pogoj skupine merodajen in atribut je samo svetovalen za to storitev. Dve storitvi v isti domeni lahko zakonito odgovorita različno, in zapis pregleda naj to navede v eni vrstici na storitev.

Rezultat, ki preživi revizijo, je kratek: kdo se lahko poveže, po katerem mehanizmu, kdaj pregledano, kdo. Zastavica klicanja da prva dva odgovora; ostalo da samo pregled politike.

Sorodni članki