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

Аўтэнтыфікацыя сканчаецца там, дзе пачынаецца дазвол

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

Праверце, да якога шляху адносіцца запыт, перш чым нешта пісаць. Трафік да хостаў за маршрутызатарам ідзе праз forward, а трафік да самога маршрутызатара, уключаючы winbox і SSH, ідзе праз input. Абсяг, які ахоплівае толькі forward, пакідае прыладу адкрытай для таго ж кліента.

Абодва ланцугі патрабуюць рашэння, нават калі рашэнне — пакінуць input закрытым. Гэты выбар належыць запыту на доступ, а не позняй думцы.

Прывяжыце сеанс да названага спісу

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

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

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

/ppp profile add name=scoped-consultant remote-address=consultant-pool address-list=vpn-scoped-clients
/ppp secret add name=consultant password=... service=ovpn profile=scoped-consultant

Запішыце дазволеную паслугу ў адзін спіс

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

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

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

/ip firewall address-list add list=vpn-targets address=10.0.0.10 comment="consultant RDP target"

Размясціце пераход перад любым шырокім accept

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

Праверце, што ні адно правіла fasttrack не можа правесці гэты трафік міма абмежаванага ланцуга. Fasttrack абыходзіць рэшту шляху фільтра, а абмежаваны сеанс, які прайшоў fasttrack, зусім не абмежаваны.

Паўтарыце рашэнне для ланцуга input, калі ўласныя паслугі маршрутызатара павінны быць недасяжнымі. Абсяг, які блакуе перасланы трафік і пакідае winbox адкрытым, зроблены толькі напалову.

/ip firewall filter
add chain=forward action=jump jump-target=scoped-vpn src-address-list=vpn-scoped-clients
add chain=scoped-vpn action=accept protocol=tcp dst-address-list=vpn-targets dst-port=3389
add chain=scoped-vpn action=drop

Праверце па лічыльніках і членстве ў спісе

З кліента праверце дазволеную паслугу і тую, што павінна праваліцца, затым прачытайце статыстыку правіл на маршрутызатары. Лічыльнікі accept і drop паказваюць, які шлях прайшоў кожны пакет, чаго кліент не бачыць. Пацвердзіце таксама, што адрас актыўнага сеансу з'явіўся ў абмежаваным спісе.

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

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

/ip firewall filter print stats where chain=scoped-vpn
/ip firewall address-list print where list=vpn-scoped-clients

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