Կարո՞ղ է OpenVPN-ի ստատիկ բանալիով կապը սպասարկել մի քանի հաճախորդի։
Ստատիկ բանալու ռեժիմը միացնում է երկու հավասարազոր կողմ։ client-to-client ավելացնելը այն չի դարձնում բազմահաճախորդ սերվեր. դրա համար անհրաժեշտ են TLS ռեժիմ և յուրաքանչյուր սարքի ինքնություն։
Ստատիկ բանալու ռեժիմը միացնում է ուղիղ երկու հավասարազոր կողմ, և դա նրա կառուցվածքն է, ոչ թե սահմանափակում, որը ինչ-որ մեկը մոռացել է վերացնել։ client-to-client-ը սերվերի ռեժիմի փոխանցման ընտրանք է, ուստի այն --secret կազմաձևին ավելացնելը ոչինչ չի փոխում այն հարցում, թե քանի հաճախորդ կարող է միանալ։ Որոշումը ոչ թե այն է, թե որ դրոշը ավելացնել, այլ այն, թե արդյոք տեղակայմանը պետք է կետ-կետ կապ, թե բազմահաճախորդ ծառայություն։ Եթե մի քանի սարք պետք է ինքնուրույն միանա, պաշտպանության ռեժիմը փոխվում է, և յուրաքանչյուր սարք ստանում է ինքնություն։
Երկու կողմ, մեկ բանալի և ոչ մի վիճակ յուրաքանչյուր հաճախորդի համար. այդ ձևը ռեժիմի ամբողջ պատմությունն է։
Ինչի համար է ստատիկ բանալու ռեժիմը
Գաղտնի ռեժիմում երկու կողմերը կիսում են մեկ բանալիի ֆայլ, և այդ բանալին ուղղակիորեն պաշտպանում է երթևեկությունը։ Չկա ձեռքսեղմում, չկա վկայագրերի փոխանակում և չկա նստաշրջան յուրաքանչյուր հաճախորդի համար, որովհետև սերվերի իմաստով հաճախորդներ չկան, միայն երկու վերջնակետեր։
Ռեժիմը մնում է օգտակար ֆիքսված զույգ մեքենաների համար՝ բանալիների փոխարկման փաստաթղթավորված գործընթացով, և OpenVPN 2.6-ը հենց դրա համար է այն նշում հնացած, որ TLS ռեժիմը ծածկում է այդ դեպքերը ավելի լավ հատկություններով։ Ինչ որ այն չի կարող անել, դա միացող սարքը մյուսից տարբերելն է, քանի որ ֆայլին տիրապետելը նույնականացման ամբողջ պատմությունն է։ Երրորդ սարք ավելացնելը նշանակում է նրա հետ կիսել նույն բանալին, որից հետո առաջին երկուսն այլևս չեն կարող նրան տարբերել իրենցից։
Այդ պատճառով երկու կողմի սահմանը կառուցվածքային է, ոչ թե փոխվող կարգավորում։
Ինչու client-to-client-ը բացակայող մասը չէ
client-to-client-ը վերահսկում է, թե արդյոք միացած հաճախորդները կարող են երթևեկություն փոխանակել սերվերի միջոցով։ Այն չի ընդունում հաճախորդների, չի տրամադրում ինքնություններ և չի ստեղծում չկազմաձևված սերվերի ռեժիմ, իսկ ստատիկ բանալու կազմաձևում չկա հաճախորդների ցանկ, որը այն կկառավարի։
Մյուս տարածված շփոթությունը վերաբերում է tls-crypt կամ tls-auth նյութին։ TLS սերվերը կարող է այդ բանալիներից մեկը կիսել բոլոր հաճախորդների միջև, որովհետև այն պաշտպանում է կառավարման ուղին, այլ ոչ թե ապացուցում, թե ով է յուրաքանչյուր հաճախորդը։ TLS ռեժիմում կիսված կառավարման ուղու բանալին այլ օբյեկտ է, քան կիսված ստատիկ տվյալների բանալին, թեև երկուսն էլ գալիս են որպես նման տեսք ունեցող ֆայլեր։
Ռեժիմների միջև ընտրությունը հանգում է երկու հարցի։ Արդյոք մեկից ավելի սարք պետք է ինքնուրույն միանա, և արդյոք տեղակայմանը պետք է չեղարկում յուրաքանչյուր սարքի համար։ Երկուսին էլ «ոչ»-ը պահում է ստատիկ բանալու ռեժիմը կենսունակ, «այո»-ն դրանցից որևէ մեկին ցույց է տալիս TLS-ին։ Երրորդ տարբերակ չկա, որտեղ երկրորդ հաճախորդն ընդունվում է առանց իր ինքնության։
Բազմահաճախորդ սերվերի կառուցումը
Բազմահաճախորդ սերվերին անհրաժեշտ են TLS ռեժիմ, սերվերի կողմի վկայագիր և ինքնություն յուրաքանչյուր հաճախորդի համար։ Սերվերի օգնականը կարգավորում է հասցեների լողավազանը և բազմահաճախորդ ռեժիմը, բայց այն չի տրամադրում TLS կազմաձևը, վստահության խարիսխը կամ հաճախորդների վկայագրերը, որոնք ընդունելությունը դարձնում են իմաստալից։
Գրանցեք յուրաքանչյուր սարք գոյություն ունեցող վկայագրային մարմնի միջոցով՝ փոխարենը չպատճենելով մեկ հաճախորդի հավատարմագրերը։ Հենց տարբեր ինքնություններն են հնարավոր դարձնում չեղարկումը, յուրաքանչյուր հաճախորդի երթուղավորումը և օգտակար մատյանները, իսկ մեկ ընդհանուր հաճախորդի վկայագիր փլուզում է բոլոր երեքը։
Եթե տեղակայումը նույնականացնում է օգտատերերին արտաքին գրացուցակի կամ երկրորդ գործոնի միջոցով, այդ ձևավորումը մնում է ինչպես կա։ TLS սերվերի ռեժիմին անցնելը որոշում է, թե ինչպես են կողմերը հաստատում իրենց թունելի շերտում, և այն չի թելադրում հաշիվների հետին մասը։ Պահեք երկու որոշումները առանձին, որպեսզի մեկում փոփոխությունը լուռ չփոխի մյուսը։
Այնուհետև գիտակցաբար որոշեք փոխանցման քաղաքականությունը։ client-to-client-ը միացնում է հաճախորդների միջև երթևեկությունը օգտվողի տարածության սերվերի ուղիում, ինչը շատ տեղակայումներ ցանկանում են, իսկ ոմանք չպետք է ունենան։ Դա քաղաքականության անջատիչ է, ոչ ինքնության մեխանիզմ, և այն պետք է միացվի, որովհետև ձևավորումը պահանջում է դա, ոչ թե որովհետև ձեռնարկը ներառել է այն։
Ստուգել, որ հաճախորդներն իսկապես անկախ են
Միացրեք երկու հաճախորդ և հաստատեք, որ նրանք տարբեր հասցեներ են ստանում և երևում են տարբեր ինքնություններով սերվերի մատյանում։ Ապա չեղարկեք մեկին և հաստատեք, որ մյուսը շարունակում է աշխատել, ինչը գործնական փորձությունն է, որ ինքնությունները չեն կիսվել։
Փորձարկեք թույլատրված կողմ-կողմ ծառայությունը և մեկը, որը պետք է մնա արգելափակված։ Երկու հաջող մուտք ապացուցում են ընդունելությունը, ոչ մեկուսացումը, և այդ տարբերությունը կարևոր է, երբ տեղակայումը պետք է բաժանի օգտատերերի խմբեր։
Վերջում կարդացեք սերվերի ռեժիմը գործող կազմաձևից, ոչ թե հիշողությունից։ Լրացուցիչ ընտրանքներով ստատիկ բանալու կազմաձևը դեռ կետ-կետ կապ է, և ճիշտ TLS սերվերը միակ դասավորությունն է, որտեղ մի քանի հաճախորդ իսկապես առանձին կողմեր են։
Եթե մատյանը ցույց է տալիս մեկ ընդհանուր անուն բոլոր սարքերի համար, խնդիրը ռեժիմը չէ։ Խնդիրը գրանցման գործընթացն է։