Թողեք յուրաքանչյուր հաշիվ սովորաբար մուտք գործելու հնարավորություն, բայց թույլատրեք VPN-ից օգտվել միայն մեկ խմբի։ PAM-ը կարող է արտահայտել այդ տարբերությունը առանց երկրորդ գաղտնաբառի պահոցի, և OpenVPN հավելումը կարելի է ուղղել մի ծառայության, որը պարունակում է միայն ձեր նախատեսած ստուգումները։ Հնարքը այդ ծառայությունը կառուցելն է՝ առանց պատահաբար համակարգային կույտը ժառանգելու։

Այստեղ շրջայցը սկսվում է հավելումի ծառայության անունից, կառուցում է քաղաքականություն, ապա ստուգում է երեք կարևոր ելքերը՝ անդամ, վավեր գաղտնաբառով դրսի մարդ և վատ հավատարմագրեր։

Ինչու առանձին PAM ծառայություն

auth-pam հավելումը որպես փաստարկ վերցնում է ծառայության անուն։ Այդ անունն ընտրում է ֆայլ /etc/pam.d-ի տակ, և այդ ֆայլի կույտն է, ինչ աշխատում է VPN մուտքի ժամանակ։ Եթե փոխանցեք նույն անունը, որն օգտագործում է համակարգային մուտքը, կժառանգեք այդ կույտի բոլոր որոշումները, ներառյալ ավելի ուշ չկապված պատճառներով ավելացվածները։

Փոխարենը ստեղծեք առանձին ծառայություն։ Սկսեք աշխատող կույտից, որն արդեն նույնականացնում է նախատեսված backend-ի դեմ, ինչպիսին է տեղական գաղտնաբառի ֆայլը, SSSD-ն կամ գրացուցակի ծառայությունը, ապա ավելացրեք իրավասության կանոնը։ Երկու տող դատարկ ֆայլ պատճենելը տարածված սխալ է. գաղտնաբառի ժամկետը, հաշվի կողպումը և այլ ստուգումներ կարող են լինել այն կույտում, որը չեք պատճենել։

Ծառայության առանձնացումը նաև սահմանափակում է վնասի շառավիղը։ Ընդհանուր կույտում միայն VPN-ի համար նախատեսված կանոնը կարող է բոլորից մերժել SSH կամ վահանակի մուտքը, ինչը մուտքի փոփոխությունը վերածում է խափանման։

Խմբի կանոնը գրելը

Իրավասության ստուգումը պատկանում է հաշվի փուլին՝ հավատարմագրերի ստուգումից հետո։ account required pam_succeed_if.so user ingroup vpnusers-ի նման կանոնը թույլ է տալիս մշակումը շարունակել միայն այն դեպքում, երբ նույնականացված օգտատերը այդ խմբի անդամ է։

Այդ տողը հատված է, ոչ ամբողջական ծառայություն։ Ինտեգրեք այն այնտեղ, ուր հասնում է յուրաքանչյուր ընդունված ուղի, և ստուգեք դրա շուրջի կառավարման դրոշները։ Կույտում ավելի վաղ sufficient-ը կամ թռիչքի կառավարումը կարող է ավարտել մշակումը նախքան ձեր կանոնի աշխատելը, ինչը սահմանափակումը վերածում է առաջարկի։

Սովորության ուժով չավելացնեք use_uid։ Առանց դրա մոդուլը գնահատում է նույնականացվող օգտատիրոջը. դրա հետ մոդուլը գնահատում է այն հաշիվը, որի տակ աշխատում է OpenVPN գործընթացը, որը սովորաբար root-ն է կամ ծառայության հաշիվ և հետևաբար ոչ թե մուտք գործող անձը։

Խմբի անդամակցությունը գալիս է համակարգի ինքնության լուծումից, ոչ թե ձեր ճանաչած անունից։ Գրացուցակի օգտատերերի համար հաստատեք, որ նույն backend-ը պատասխանում է այդ օգտատիրոջ խմբային հարցումներին, որովհետև ծանոթ անունով տեղական խումբը տարբեր օբյեկտ է, քան նույն անունով գրացուցակի խումբը։

Հերթականության և ինքնության թակարդներ

Տեղադրեք խմբի կանոնը նույնականացման կույտից հետո և յուրաքանչյուր ստուգումից հետո, որը պետք է շարունակի գործել, բայց ձեր պահպանած հաշվի ստուգումներից առաջ կամ կողքին։ PAM-ը գնահատում է մոդուլները ֆայլի հերթականությամբ, և յուրաքանչյուր տողի կառավարման արժեքը որոշում է՝ արդյոք ձախողումը վերջնական է։

Զգուշացեք կրկնվող կույտերից։ Տարածված օրինաչափությունը ներառումն է, որն արդեն պարունակում է հաշվի կանոն, որին հաջորդում է ձեր սեփական խմբի կանոնը, ինչը ստեղծում է երկու որոշում այնտեղ, որտեղ մեկն էիք սպասում։ Կարդացեք ներառված ֆայլը, ոչ միայն ձեր խմբագրածը։ Փաստացի հերթականությունը տեսնելու արագ ձևը ֆայլը վերևից ներքև կարդալն ու յուրաքանչյուր կառավարման արժեք նշելն է։

Անփոփոխ պահեք ընդունման մյուս պահանջները։ Հաջող գաղտնաբառը չի փոխարինում վկայագրի ստուգումներին, երկրորդ գործոնին կամ միացումից հետո լիազորությանը, և այս քաղաքականությունը դրանցից ոչ մեկի փոխարինողը չէ։ Այն միայն որոշում է՝ արդյոք հաշիվն իրավասու է դիտարկվելու VPN մուտքի համար։

Անդամների, դրսի մարդկանց և սխալ գաղտնաբառերի ստուգում

Ստուգեք երեք դեպք նախքան քաղաքականությունը պատրաստ համարելը։ Անդամը հաջողությամբ միանում է։ Խմբից դուրս վավեր հաշիվը նույնականացնում է իր գաղտնաբառը, բայց VPN մուտքը մերժվում է։ Ցանկացած հաշվի համար սխալ գաղտնաբառը մերժվում է նույնականացման փուլում, ոչ թե խմբի կանոնով։

Միասին դիտեք հաճախորդին տեսանելի սխալը և սերվերի մատյանը, որովհետև երկու ձախողումներն էլ կարող են նույնը թվալ միացող մարդուն։ Տարբերությունը կարևոր է աջակցության համար. ճիշտ գաղտնաբառով դրսի մարդուն անհրաժեշտ է խմբի փոփոխություն, մինչդեռ սխալ գաղտնաբառը պահանջում է հավատարմագրերի վերականգնում։

PAM-ը խմբագրելիս բաց պահեք երկրորդ նստաշրջանը և փոփոխությունից հետո ստուգեք նաև սովորական SSH մուտքը։ Առանձին ծառայության իմաստն այն է, որ համակարգային մուտքը պետք է մնա անազդեցիկ, և դա իմանալու միակ ձևը ստուգելն է։

Եթե ինչ-որ բան կոտրվի, վերականգնեք նախորդ ծառայության ֆայլը պատճենից։ Ցանկալի կանոնը հեշտ է ձևակերպել. անդամակցությունը հաշիվը դարձնում է VPN մուտքի իրավասու, և մյուս բոլոր պարտադիր ստուգումները շարունակում են գործել։

Առնչվող հոդվածներ