MikroTik VPN օգտատերը չափից շատ է հասնում՝ սահմանափակեք մեկ հոսթով և մեկ պորտով
PPP պրոֆիլը կարող է հատկացված թունելի հասցեն դնել հասցեների ցանկում, և մեկ jump շղթա կարող է թույլ տալ մեկ հոսթ և պորտ մինչև անկումը։
Թունելը բարձրանում է, մուտքը հաջողվում է, և ցանցի յուրաքանչյուր հոսթ պատասխանում է։ Սա կոտրված VPN չէ, սա VPN է առանց թույլտվությունների մոդելի։ RouterOS-ը նույնականացնում է հաշիվը և ապա երթուղավորում նրա փաթեթները ինչպես ցանկացածի փաթեթները, ուստի սահմանը պետք է տա firewall-ը։ Այդ սահմանն ավելացնելը առանց մուտքը կոտրելու ամբողջ աշխատանքն է։
Նույնականացումն ավարտվում է այնտեղ, որտեղ սկսվում է թույլտվությունը
PPP սեսիան բարձրանալուն պես հաճախորդի փաթեթները մտնում են forward շղթա ինչպես ցանկացած այլ ինտերֆեյսի թրաֆիկ։ Եթե երթուղիչի forward քաղաքականությունը թույլատրող է, խորհրդատուն մուտքի պահին ժառանգում է այդ թույլատրողությունը։ Հաշիվը երբեք շրջանակ չի կրել, ուստի հաշվի վրա փոխելու բան չկա։ Կանոնների հավաքածուն գրվել է աշխատակիցների համար, և նոր սեսիան պարզապես միացել է դրան։
Նախքան որևէ բան գրելը ստուգեք, թե հարցումը որ ուղուն է վերաբերում։ Երթուղիչի հետևում գտնվող հոսթերին ուղղված թրաֆիկն անցնում է forward-ով, մինչդեռ հենց երթուղիչին ուղղված թրաֆիկը, ներառյալ winbox-ը և SSH-ը, անցնում է input-ով։ Միայն forward-ը ծածկող շրջանակը սարքը բաց է թողնում նույն հաճախորդի համար։
Երկու շղթաներն էլ որոշում են պահանջում, նույնիսկ եթե որոշումը input-ը փակ պահելն է։ Այդ ընտրությունը պատկանում է մուտքի հարցմանը, ոչ թե հետագա մտքին։
Կապեք սեսիան անվանված ցանկին
PPP պրոֆիլը կարող է սեսիայի մեկնարկին տրամադրվող հասցեն դնել անվանված հասցեների ցանկում։ Դա ժամանակավոր թունելի հասցեն դարձնում է մի բան, որը firewall-ը կարող է համապատասխանեցնել անունով, և գրառումն անհետանում է սեսիայի ավարտին։ Այնուհետև հաշիվը շրջանակը ժառանգում է իր պրոֆիլից, այլ ոչ թե կանոնից, որը կոշտ կոդավորում է հասցեն։
Նախ ստեղծեք պրոֆիլը, ապա 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"
Դասավորեք jump-ը ցանկացած լայն accept-ից առաջ
Jump կանոնը շրջանակված ցանկից փոխանցված թրաֆիկն ուղարկում է մասնավոր շղթա, որտեղ ամբողջ քաղաքականությունը տեղավորվում է երեք տողում։ Առաջին կանոնը ընդունում է թույլատրված նպատակակետը և պորտը, իսկ վերջինը գցում է մնացած ամեն ինչ։ Jump-ը պետք է լինի forward-ի ցանկացած լայն accept-ից վերև, որովհետև ավելի վաղ accept-ը նշանակում է, որ jump-ը երբեք չի աշխատի։ Պահեք established-ի և related-ի accept-ը jump-ից առաջ, որպեսզի վերադարձի թրաֆիկը շարունակի հոսել։
Ստուգեք, որ ոչ մի 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