Кожны ўваход праз VPN трапляе ў нейкую прастору імёнаў уліковых запісаў, і менавіта сфера выбірае, у якую. Яна нічога не кажа пра краіну, размяшчэнне сервера або ўзровень даверу. Два аднолькавыя імёны карыстальнікаў могуць існаваць у розных сферах, таму правільны пароль часам пацвярджае не той уліковы запіс. Гэтая інструкцыя спачатку выпраўляе форму ідэнтычнасці, а потым вядзе запыт да сістэмы, якая фактычна адказала.

Што выбірае сфера

Шлюз атрымлівае імя карыстальніка і павінен вырашыць, дзе яго правяраць. Сфера — гэта частка гэтага імені або атрыбут побач з ім, які выбірае базу даных: каталог, пул RADIUS, лакальны файл уліковых запісаў. NPS ад Microsoft называе гэта імем сферы і накіроўвае па ім запыты на злучэнне, а ідэнтыфікатар сеткавага доступу EAP нясе тую ж ідэю як суфікс пасля знака @ у RFC 7542. Абодва — селектары, і ні адзін не вырашае, ці добрыя ўліковыя даныя.

Такое раздзяленне спараджае два вельмі розныя збоі. Сфера, якая накіроўвае правільна з няправільным паролем, дае адну адмову, а сфера, якая накіроўвае ў няправільную базу, можа адхіліць правільны пароль або прыняць чужы. Ні адзін з памылак не згадвае сферу, таму першая дыягностыка заўсёды адна: высветліце, якая сістэма адказала.

Сінтаксіс сферы залежыць ад разгортвання. Адныя службы хочуць некваліфікаванае імя плюс атрыбут, другія — user@domain, а некаторыя чакаюць форму з адваротнай касой рысай, пра якую большасць кіраўніцтваў не згадвае.

Выкарыстоўвайце форму, якую чакае бэкенд

Спытайце ў аператара, якую форму ўводзіць, перш чым спрабаваць суфіксы з падручніка. Імя з даменам, якое трапляе ў бэкенд, што чакае простае імя, звычайна правальвае пошук, а не праверку пароля. Адно і тое ж кароткае імя ў двух каталогах — гэта выпадак, дзе адсутная сфера наносіць найбольшую шкоду.

Не ўспрымайце ўліковы запіс кіравання як доказ. Вэб-кансоль, дзе вы адмініструеце службу, можа аўтэнтыфікавацца па лакальным файле, а тунель правярае зусім іншы каталог. Тэстуйце з уліковымі данымі, якія выкарыстоўваў бы рэальны карыстальнік, на інтэрфейсе, які выкарыстоўваў бы рэальны карыстальнік. Паспяховы ўваход у кансоль нічога не кажа пра сферу, якую шлюз ужывае да аўтэнтыфікацыі VPN.

Браўзеры і паштовыя кліенты часам кэшуюць папярэднюю ідэнтычнасць і моўчкі адпраўляюць яе зноў. Калі паведамленае імя карыстальніка адрозніваецца ад уведзенага, гэты кэш — першае месца, дзе варта паглядзець.

Прасачыце запыт праз проксі

На франтэндзе FreeRADIUS сферы аб'яўляюцца ў канфігурацыі проксі, і аб'яўлены суфікс вырашае, які хатні сервер атрымае запыт. Прачытайце гэты файл, перш чым нешта змяняць, бо запыт, які не адпавядае ніводнай сферы, па змаўчанні апрацоўваецца лакальна.

grep -n -A4 '^realm' /etc/freeradius/3.0/proxy.conf
radtest '[email protected]' 'wrong-password' 10.20.30.10 0 testing123
journalctl -u freeradius --since '-10 min' | grep -iE 'realm|stripped'

grep паказвае, якія суфіксы існуюць і ў які пул кожны накіраваны. Выклік radtest адпраўляе імя са сферай і наўмысна няправільны пароль, така што адмова даказвае, што працавалі і маршрут, і праверка ўліковых даных. Радкі журнала вакол гэтай спробы паказваюць, ці было імя ўрэзана перад проксіраваннем і які хатні сервер яго ўзяў. Калі журнал зусім не паказвае супадзення сферы, запыт не пакідаў лакальны сервер, і праблема ў суфіксе, а не ў паролі.

Змяняйце па адным і паўтарайце спробу, бо журнал аддзяляе маршрутызацыю ад адмовы ўліковых даных толькі тады, калі ўвод адрозніваецца паміж запускамі. Трымайце агульны сакрэт па-за гісторыяй абалонкі там, дзе інструмент падтрымлівае чытанне з файла або з запыту.

Запішыце спробу, не выдаўшы яе

Запішыце збой у форме, з якой адміністратар можа дзейнічаць: інтэрфейс, форма ідэнтычнасці, наяўнасць сферы і дакладная несекрэтная памылка. Трымайце жывое імя карыстальніка па-за публічнымі справаздачамі, а сферу — унутры. Зацямненне кожнай ідэнтычнасці адным і тым жа пазіцыянерам хавае менавіта тую неадпаведнасць, якую вы шукаеце. Часавая метка таксама важная, бо шлюз, проксі і каталог вядуць асобныя журналы.

Затым апішыце пераможную форму для карыстальнікаў, бо наступны чалавек, які памыліцца, адкрые той жа квіток. Скід пароля не выпраўляе запыт, які працягвае трапляць у няправільную прастору імёнаў. Сфера — гэта рашэнне аб маршрутызацыі, а рашэнні аб маршрутызацыі выпраўляюцца іх правільным называннем.

Падобныя артыкулы