Ներքևի ենթացանցը ընդդեմ աշխատասեղանի VPN-ի. բացառեք տրանզիտը, ոչ թե հավելվածները
Հավելվածային շրջանցումը դասակարգում է միայն տեղական ելքը։ Աշխատանքային կայանի հետևի սարքերին պետք է սեփական մուտքի, փոխանցման և վերադարձի քաղաքականություն։
Մեկ մեքենա, երկու աշխատանք, մեկ firewall. Wi-Fi վերբեռնման կապ, դրա հետևում փոքր Ethernet ենթացանց և աշխատասեղանի VPN հաճախորդ, որը ենթադրում է, թե այն ամենը, ինչ դուրս է գալիս մեքենայից, տեղական է։ Տեղական գործարկված հավելվածները դուրս են գալիս տեղական ելքի ուղով։ Աշխատանքային կայանի հետևի սարքերը գալիս են Ethernet պորտ և պահանջում են փոխանցման որոշում։ Առաջին ուղու համար գրված բացառությունը երբեք չի տեսնում երկրորդը, և դրա համար էլ դիտարկիչը շրջանցում է թունելը, իսկ սարքերը՝ ոչ։
Երկու փաթեթային ուղի, մեկ քաղաքականություն
| Origin | Path | Decision owner |
|---|---|---|
| Application on the workstation | OUTPUT then egress | The VPN app's routing policy |
| Device behind the workstation | PREROUTING then FORWARD | The workstation's own forwarding policy |
Առաջին տողը այն է, ինչ նկարագրում են split-tunneling-ի ուղեցույցների մեծ մասը։ Երկրորդը երթուղիչի կարգավորում է, որը պատահաբար ապրում է նույն մեքենայում։ Դրանք մեկ մտավոր մոդելի մեջ միաձուլելը սխալն է. նրանք կիսում են միջուկը, բայց ոչ քաղաքականությունը։ Գծեք երկու ուղիներն էլ նախքան որևէ կանոն խմբագրելը, և մնացած ձևավորումը բխում է նրանից, թե որ ուղին է բացակայում։
Աղյուսակը նաև բացատրում է, թե ինչու մեկ մեքենան կարող է անցնել մեկ թեստ և ձախողել մյուսը։ Աշխատանքային կայանի դիտարկիչն ապացուցում է տեղական ուղին. Ethernet պորտին միացված նոթբուքը՝ փոխանցման ուղին։ Ստուգեք ցանկացած փոփոխություն երկուսով էլ, այլապես երկրորդը կմնա չփորձարկված, որքան էլ դիտարկիչը թարմացվի։
Ինչ է իրականում դասակարգում հավելվածի բացառությունը
Հավելվածային բացառությունը սովորաբար աշխատում է այսպես՝ նշում է գործընթացի կամ օգտատիրոջ փաթեթները, ապա նշված երթևեկությունը ուղղում թունելից դուրս։ Դա տեղական ելքի կառուցվածք է։ Ներքևի սարքից եկած փաթեթը տեղական գործընթաց չունի, ուստի այն երբեք չի համապատասխանում ընտրիչին, ինչ էլ որ լինի ընտրիչը։
Ինչ էլ որ լինի ընտրիչը, երկու ցանկերը նույն ցանկը չեն, և ամբողջ խնդիրն այդ է։ Mullvad-ի Linux ուղեցույցը նկարագրում է նշումներ, որոնք սպառում են նրա firewall-ը և երթուղային քաղաքականությունը, և նրա օրինակները ուղղված են տեղական ելքին. դրանք ներքևի երթուղիչի աջակցվող նկարագրություն չեն։ Դրանք պատճենելը տալիս է մեքենա, որը կարծում է, թե բացառություն ունի, մինչդեռ ամեն ինչ ուղարկում է թունել։
Գրեք տրանզիտի պայմանագիրը
Միասին անվանեք ներքևի աղբյուրի նախածանցը և մուտքի ինտերֆեյսը, ապա սահմանափակեք այդ նախածանցը մուտքի մոտ։ Առանց սահմանափակման՝ ցանկացած սարք, որ հասնում է պորտին, կարող է պահանջել բացառված հասցե և դուրս գալ շրջանցումով։ Դիտարկեք որպես երկու հարց. թույլատրվա՞ծ է այս հոսթերին ընդհանրապես օգտագործել այս վերբեռնման կապը, և թույլատրվա՞ծ է հասնել աշխատանքային կայանին կամ թունելի մասնավոր միջակայքերին։ Դրանք լրացուցիչ թույլտվություններ են, ոչ թե կապի ընտրության կողմնակի ազդեցություն։
Թույլատրեք փոխանցումը, ապա զտեք այն։ Linux դարպասին պետք է միացված փոխանցում, կանոններ, որոնք թույլ են տալիս նախատեսված երթևեկությունը երկու ուղղությամբ, և կա՛մ վերին վերադարձի երթուղի, կա՛մ դիտավորյալ սահմանափակված աղբյուրի թարգմանություն։ NAT-ը միայնակ չի ընտրում վերբեռնման կապը և չի տալիս անցում զտիչով. այն միայն վերաշարադրում է հասցե այդ որոշումներից հետո։
Տրանզիտի դասակարգումը պետք է տեղի ունենա փոխանցման երթուղու որոշումից առաջ, այսինքն՝ prerouting փուլում, ոչ output-ում։ Որոշումից հետո դրված կանոնը դեռ կարող է փոխել փաթեթը, բայց չի կարող փոխել, թե ուր այն արդեն ուղարկվել է։
Նշումները պատկանում են դրանք ունեցող հավելվածին
Նշման արժեքները, աղյուսակների համարները և շղթաների առաջնահերթությունները VPN հավելվածի քաղաքականության մասն են, ոչ հավերժական հաստատուններ։ Ցանցը, որը կախված է աղյուսակում կանոն ներդնելուց, որը վերարտադրում է այլ ծրագիր, կկոտրվի հաջորդ թարմացման ժամանակ, սովորաբար վերակապակցման ընթացքում, ոչ հարմար պահին։
accept վճիռով երկրորդ բազային շղթա ավելացնելը պարտադիր չէ, որ վերացնի ավելի ուշ շղթայի drop-ը։ Բազային շղթաներն ունեն կեռիկներ և առաջնահերթություններ, և հերթականությամբ առաջին վճիռն է հաղթում. մի շղթայում accept-ը չի չեղարկում drop-ը, որին մեկ այլ շղթա հասնում է ավելի վաղ։ Նայեք ամբողջ կանոնների հավաքածուն և երթուղային քաղաքականության հերթականությունը, ոչ թե այն մեկ հաշվիչը, որն աճեց։ Հաշվիչը ապացուցում է, որ կանոնը աշխատել է, երբեք այն, որ հենց նրա վճիռն է կիրառվել։
Ինտեգրեք կամ տեղափոխեք ենթացանցը
Երկու ձևավորումները տարբերվում են նրանով, թե ով է տիրապետում շրջանցմանը։ Ինտեգրված ձևավորումը պահում է մեկ մեքենա և մեկ քաղաքականություն՝ ի հաշիվ VPN հավելվածի աղյուսակների կյանքի ցիկլից և նշումների հավաքածուից կախվածության, որը նրա փաստաթղթերը կարող են փոխել։ Ներքևի ցանցի համար առանձին երթուղիչը վերացնում է այդ կախվածությունը ամբողջությամբ. ենթացանցն ունի իր վերբեռնման կապը, և աշխատանքային կայանը մնում է հաճախորդ առանց փոխանցման դերի։
Ընտրեք երկրորդը, երբ ներքևի ցանցը պետք է շարունակի աշխատել VPN թարմացումների ընթացքում, կամ երբ ոչ ոք չի կարող յուրաքանչյուր թողարկումից հետո ստուգել ինտեգրված քաղաքականությունը։ Ընտրեք առաջինը միայն այն դեպքում, երբ ինտեգրումը փաստաթղթավորված է և ինչ-որ մեկը պատասխանատու է դրա համար։
Ստուգեք սահմանը չորս վիճակներում՝ միացված, վերակապակցվող, դիտավորյալ արգելափակված և կանգնեցված։ Ստուգեք անվանման լուծումը և հասցեների երկու ընտանիքները յուրաքանչյուրում, որովհետև DNS արտահոսող շրջանցումը այն բացառությունը չէ, որը դուք նախագծել եք։ Թեստը պետք է ապացուցի ստույգ սահմանը, ոչ միայն այն, որ մեկ էջ բեռնվել է։