MikroTik VPN-i kasutaja jõuab liiga kaugele: piirake ühe hosti ja ühe pordiga
PPP-profiil saab määratud tunneliaadressi panna aadressiloendisse ja üks hüppeahel saab enne langetamist lubada ühe hosti ja pordi.
Tunnel tõuseb, sisselogimine õnnestub ja iga host võrgus vastab. See ei ole katkine VPN; see on VPN, millel puudub õiguste mudel. RouterOS autentib konto ja suunab seejärel selle paketid nagu kõigi teiste omad, seega tulemüür peab piiri pakkuma. Selle piiri lisamine ilma sisselogimist rikkumata ongi kogu töö.
Autentimine lõpeb seal, kus algab luba
Kui PPP-sessioon on üleval, sisenevad kliendi paketid forward-ahelasse nagu liiklus mis tahes muult liideselt. Kui ruuteri forward-poliitika on lubav, pärib konsultant sisselogimisel selle lubavuse. Konto ei kandnud kunagi ulatust, seega pole kontol midagi muuta. Reeglistik kirjutati töötajatele ja uus sessioon lihtsalt ühines sellega.
Kontrollige, millist teed päring puudutab, enne kui midagi kirjutate. Liiklus ruuteri taga olevate hostideni läbib forwardi, samas kui liiklus ruuteri enda juurde, sealhulgas winbox ja SSH, läbib inputi. Ulatus, mis katab ainult forwardi, jätab seadme sama kliendi jaoks avatuks.
Mõlemad ahelad vajavad otsust, isegi kui otsus on jätta input suletuks. See valik kuulub juurdepääsupäringusse, mitte hilisemasse mõttesse.
Siduge sessioon nimetatud loendiga
PPP-profiil saab sessiooni alguses panna väljastatava aadressi nimetatud aadressiloendisse. See muudab mööduva tunneliaadressi millekski, mida tulemüür saab nime järgi sobitada, ja kirje kaob sessiooni lõppedes. Konto pärib seejärel ulatuse oma profiilist, mitte reeglist, mis aadressi kõvasti kodeerib.
Looge esmalt profiil ja siduge seejärel secret sellega selgesõnaliselt. Secret, mis osutab endiselt vaikeprofiilile, taastoodab algse probleemi.
Nimetage profiil ja loend nii, et nende ülesanded oleksid ilmsed, ja kommenteerige mõlemat päringu viitega. Üks profiil saab teenindada mitut inimest sama ulatusega, samal ajal kui loend tuvastab endiselt iga elava sessiooni. Seda on odavam üle vaadata kui reeglit inimese kohta.
/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
Kirjendage lubatud teenus ühte loendisse
Pange lubatud server omaette aadressiloendisse, selle asemel et aadress filtrireeglisse põimida. Loendit saab auditeerida, laiendada ja kommenteerida ning seda tarbiv reegel ei muutu, kui server liigub. Üks kirje tundub liiane, kuni saabub teine host, mida tavaliselt juhtub.
Sobitage loendit, kui aadress on dünaamiline või koormuse järgi jaotatud, ja sobitage aadressi otse, kui see on reserveeritud ja stabiilne. Mõlemad valikud loetakse selgelt, kui kommentaar nimetab teenuse ja omaniku.
Piirake protokolli ja porti samuti kui hosti. Hostile ilma pordipiiranguta antud accept avab iga teenuse, mida see host käitab, mis on laiem, kui enamik juurdepääsupäringuid kavatseb. Port on loa osa, mitte hiljem lisatav üksikas.
/ip firewall address-list add list=vpn-targets address=10.0.0.10 comment="consultant RDP target"
Järjestage hüpe enne mis tahes laia accepti
Hüppereegel saadab edastatud liikluse piiratud loendist privaatsesse ahelasse, kus kogu poliitika mahub kolmele reale. Esimene reegel aktsepteerib lubatud sihtkoha ja pordi ning viimane langetab kõik muu. Hüpe peab asuma forwardis igast laiast acceptist kõrgemal, sest varasem accept tähendab, et hüpe ei käivitu kunagi. Hoidke established- ja related-accept enne hüpet, et tagasiliiklus ikka voolaks.
Kontrollige, et ükski fasttrack-reegel ei saa seda liiklust piiratud ahelast mööda viia. Fasttrack möödub ülejäänud filtriteest ja fasttrackitud piiratud sessioon ei ole üldse piiratud.
Korrake otsust input-ahela jaoks, kui ruuteri enda teenused peaksid olema kättesaamatud. Ulatus, mis blokeerib edastatud liikluse ja jätab winboxi lahti, on vaid pooleldi valmis.
/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
Kontrollige lugejate ja loendi kuuluvusega
Testige kliendist lubatud teenust ja ühte, mis peab ebaõnnestuma, seejärel lugege ruuteril reeglite statistikat. Accept- ja drop-lugejad näitavad, millise tee iga pakett läbis, mida klient ei näe. Kinnitage ka, et elava sessiooni aadress ilmus piiratud loendisse.
Tühi loend tähendab, et konto on teisel profiilil või profiil kaotas aadressiloendi seade. Kasvav drop-lugeja ebaõnnestuva lubatud teenuse juures tähendab, et sihtkoht või port ei vasta sellele, mida klient saadab.
Testige sama teenust nime ja aadressi järgi, enne kui midagi järeldate. Nime lahendamise tõrge näeb kliendi poolelt täpselt välja nagu blokeeritud port. Seejärel kirjendage profiil, mõlemad loendid ja ainus lubatud teenus juurdepääsupäringusse, et järgmine ülevaatus võrdleks, mitte ei taastaks.
/ip firewall filter print stats where chain=scoped-vpn
/ip firewall address-list print where list=vpn-scoped-clients