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

Սկսեք առաջադրանքից, ոչ հաշվից

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

Առանձին պահեք նույնականացումը և լիազորումը, մինչ գրում եք։ Նույնականացումը պատասխանում է, թե ով է միանում. լիազորումը պատասխանում է, թե ինչի կարող է հասնել նստաշրջանը հետո։ RADIUS-ը երկրորդ մասը կրում է որպես ատրիբուտներ, օրինակ՝ Filter-Id, Framed-IP-Address, Session-Timeout և Class, և դարպասը կցում է դրանք, հենց մուտքը հաջողվում է։ Նախագիծը, որը փոխում է մուտքը և անփոփոխ թողնում լիազորումը, ոչինչ չի սահմանափակել։

Համատեղ մարդկային մուտք՝ գաղտնաբառը դառնում է սահման

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

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

Վերագրումը մյուս ծախսն է։ Դարպասի մատյանի յուրաքանչյուր նստաշրջան կրում է նույն օգտանունը, ուստի գիշերային համաժամացումը չի տարբերվում այն գրած մարդու աշխատանքից, և առաջադրանքը չեղարկելը նշանակում է չեղարկել այդ մարդուն։

Մեքենայի վկայական՝ հոսթին կապված ինքնություն

Վկայականը հարցը փոխում է այն բանից, թե ինչ գիտի հաշիվը, այն բանի, թե ինչ է հոսթը։ EAP-TLS-ով հաճախորդը ներկայացնում է վկայական և ապացուցում համապատասխան մասնավոր բանալու տիրապետումը. քաղաքականության սերվերը սուբյեկտը կամ համակարգչային հաշիվը քարտեզագրում է խմբի և կիրառում այդ խմբի քաղաքականությունը։ Ոչ հարցում, ոչ տեքստային ֆայլում նստած համատեղ գաղտնիք։

Ստեղծած սահմանը նեղ է, քան մարդիկ սպասում են։ Վկայականը նույնականացնում է հոսթը, ոչ առաջադրանքը, և ցանկացած ոք, ով ունի root կամ տեղական ադմինիստրատորի իրավունքներ, կարող է օգտագործել այդ բանալին այդ հոսթի վրա։ Պահեք բանալին այնտեղ, որտեղ հարթակը պաշտպանում է այն՝ չարտահանվող Windows-ի վկայականների պահոցում, TPM-ով ապահովված այնտեղ, որտեղ պրոֆիլը թույլ է տալիս, կամ root-ին պատկանող 0600 ֆայլ Linux-ում։ Հոսթի վտանգումը հավատարմագրման վտանգումն է։

Ժամկետի լրանալը կրկնվող ձախողումն է։ Կիրակի լրանացող վկայականը կիրակի կանգնեցնում է առաջադրանքը, և դարպասը սովորաբար հաղորդում է ընդհանուր նույնականացման ձախողում՝ ամսաթիվը նշելու փոխարեն։ Ստուգեք ամսաթվերը առաջադրանքի հոսթից որպես runbook-ի մաս.

openssl x509 -in client.pem -noout -subject -issuer -dates
ipsec listcerts

Չեղարկումը պահանջում է ուղի, որը դարպասը ստուգում է։ OpenVPN կարդում է CRL crl-verify ընտրանքով, և strongSwan-ը կախված է CRL-ից կամ OCSP-ից՝ ըստ կապի պրոֆիլի կառուցվածքի։ Եթե դրանցից ոչ մեկը միացված չէ, հոսթը հեռացնելը նշանակում է սպասել վկայականի ժամկետի լրանալուն։

Երեք պայման, որոնք որոշում են նրանց միջև

Համեմատեք ձեր ունեցած հարթակի հետ, ոչ թե հղման նախագծի։

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

ConstraintMachine certificateDedicated user account with stored secret
Unattended loginPrivate key proof, no promptOnly if the account is exempted from MFA
Resource expects a user identityWorks only when the resource accepts computer accountsMatches the access a person would have
RotationRe-enrollment, often automatedSecret change plus redeploy of every copy
Revocation speedTied to CRL or OCSP refreshDisable the account, immediate

Կարդացեք աղյուսակը որպես ծախսերի ցանկ, ոչ որպես վարկանիշ։ Պահված գաղտնիքի սյունակը հաղթում է չեղարկման արագությամբ և ռեսուրսների հետ համատեղելիությամբ, որոնք հասկանում են միայն օգտվողի հաշիվներ. վկայականի սյունակը հաղթում է պտտման և սցենարի աշխատանքի համար MFA-ն չթուլացնելու հարցում։

Սահմանը դրեք քաղաքականության մեջ՝ նույնականացումից հետո

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

Առաջադրանքին տվեք սեփական խումբ կամ քաղաքականության պայման՝ հիմնված այն բանի վրա, ինչ կրում է մեքենայի ինքնությունը՝ վկայականի ձևանմուշ, զանգահարող կայանի նույնացուցիչ կամ հատուկ լողավազանից հասցե։ Այնուհետև սահմանափակեք նստաշրջանը ատրիբուտներով՝ Filter-Id այն դերի համար, որին ձեր դարպասը քարտեզագրում է այն, կարճ Session-Timeout, որպեսզի կախված առաջադրանքը վերանույնականանա օրերով նստաշրջան պահելու փոխարեն, և Framed-IP-Address լողավազանից, որի վրա մյուս կողմում firewall եք դնում։ Հավելվածի լիազորումը մնում է առանձին. դեպի տվյալների բազայի սերվեր թունելը դրա ներսում աղյուսակ կարդալու թույլտվություն չէ։

Ստուգեք մերժումները, ապա պլանավորեք հեռացումը

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

Ապա հաստատեք նույն նստաշրջանը երկու տեղում։ Դարպասի մատյանը ցույց է տալիս նույնականացված ինքնությունը. քաղաքականության սերվերի մատյանը ցույց է տալիս, թե որ քաղաքականությունը համապատասխանեց և ինչ ատրիբուտներ վերադարձրեց։ OpenVPN-ում սերվերը գրանցում է վկայականի ընդհանուր անունը, և strongSwan-ի ipsec statusall-ը տպում է հաստատված թունելը՝ օգտագործվող ինքնությամբ։ Եթե երկու մատյանները համաձայն չեն ինքնության հարցում, քաղաքականությունը համապատասխանում է ձեր ենթադրածից տարբեր բանի։

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

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

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