Ինչո՞ւ է OpenConnect-ը մերժում շլյուզը վկայագրի փոխարինումից հետո։
Շլյուզի վկայագրի փոխարինումից հետո ստուգման ձախողումը վստահության որոշում է, ոչ թե կոտրված թունել։ Ընտրեք թողարկող CA-ի և մեկ բանալի ամրակապման միջև։
Շլյուզները փոխարինում են վկայագրերը, և երեկ միացած հաճախորդը սկսում է կանգ առնել առաջին TLS փոխանակման ժամանակ։ Հաղորդագրությունը նշում է ստուգման պատճառ, ոչ թե ցանցի խափանում, և մեքենան ինքը չի փոխվել, ինչը օգտակար հուշում է։ Կոտրվել է ներկայումս ներկայացվող վկայագրի և արմատների հարաբերությունը, որոնք հաճախորդը պատրաստ է դիտարկել։ Սա վերանորոգելը վստահության որոշում է, ուստի կայացրեք այդ որոշումը նախքան տարբերակ գրելը։
Կարդացեք ձախողումը նախքան վստահության որևէ կարգավորում փոխելը
«Բացակայող ստորագրող» տիպի սխալը նշանակում է, որ շղթան ավարտվում է մի բանի վրա, որը հաճախորդը չի ընդունում։ Դա կարող է լինել ներքին մարմնի նորացված վկայագիր, հանրային մարմնի փոխարինում, կամ մեջտեղում գտնվող սարք, որն իր վկայագիրն է ներկայացնում։ Միայն ձևակերպումը չի կարող տարբերել այդ դեպքերը, ուստի որոշելուց առաջ նայեք թողարկողին։
Մեկ անգամ գործարկեք կապը առաջին պլանում և թողեք այն ձախողվի, որովհետև ինտերակտիվ ելքը կրում է սերվերի անունը, թողարկողների շղթան և հաճախորդի հաշվարկած մատնահետքը։ Համեմատեք այդ թողարկողին մի մարմնի հետ, որը ձեր կազմակերպությունը իսկապես շահագործում է։ Եթե մատնահետքը փոխվել է, իսկ թողարկողը՝ ոչ, վերաբերվեք դրան կասկածելիորեն, մինչև նորացումը հաստատվի արդեն վստահելի ալիքով։ Այս պահին գուշակելը հենց այն ճանապարհն է, որով մարդն ի վերջո ամրակապում է միջամտողի բանալին։
Նույն գրառման մեջ նշեք հաճախորդի տարբերակը։ Վստահության խնդիր թվացող ձախողումների զգալի մասը գալիս է ավելի հին հաճախորդից, որը հանդիպում է ավելի նոր շլյուզի փոխանակման։
Ընտրեք թողարկողին վստահելու և մեկ բանալի ամրակապելու միջև
Երկու տարբերակներն էլ կապը հաջող են դարձնում։ Հետագայում դրանք կոտրվում են հակառակ ձևերով, ուստի ընտրությունը պատկանում է այն ձախողմանը, որը կարող եք հանդուրժել։
| Approach | Good fit | What breaks it |
|---|---|---|
Trust the issuing CA with --cafile | Internal PKI you can obtain over an already trusted channel | CA rotation, or a client that still falls back to public roots |
Pin one key with --servercert | No CA relationship, or exactly one key should ever be accepted | Any reissue that generates a new key pair |
Դիմեք CA ֆայլին, երբ վկայագիրը գալիս է մարմնից, որը կարող եք ինքնուրույն ստուգել, որովհետև այդ դեպքում նորացումները շարունակում են աշխատել առանց հաճախորդի արգումենտներին դիպչելու։ Զույգացրեք այն անջատիչի հետ, որն անջատում է համակարգի արմատները, հակառակ դեպքում հանրային մարմինը կարող է ձեր փոխարեն բավարարել ստուգումը։ Փոխարենը ամրակապեք, երբ շլյուզը չունի ձեռք բերելի CA, կամ երբ նպատակը հնարավոր ամենասեղմ բացառությունն է։ Ոչ մի ուղի վերացականորեն ավելի ապահով չէ՝ CA-ն մասշտաբավորվում է նորացումների ընթացքում, ամրակապումն ավելի հեշտ է վերանայել։
Ինչ էլ ընտրեք, վստահելի արժեքը պետք է հասնի ալիքով, որը վստահելի էր մինչև փոփոխությունը։ Ադմինիստրատորը, շլյուզի վրա կոնսոլային նստաշրջանը կամ նախապես վերցված պատճենը բոլորն էլ պիտանի են։ Հուշման ցուցադրած ցանկացած մատնահետք պատճենելը հարմար է և հենց այն, ինչի վրա միջամտողը հույս ունի։
Արժեքը դրեք այն հրամանի մեջ, որը իսկապես գործարկում եք
Ամրակապումը գնում է սերվերի վկայագրի տարբերակով, և նրա նախածանցը որոշում է կոդավորումը՝ տասնվեցական հանրային բանալու ամփոփումներ sha1 կամ sha256-ի ներքո, և base64 բանալու ամրակապումը pin-sha256-ի ներքո։ Այն տրամադրելը նաև անջատում է համակարգի վստահությունը տվյալ գործարկման համար, ուստի ամրակապված բանալին դառնում է ամբողջ որոշումը։
sudo openconnect --protocol=gp vpn.example.com --user alice \
--servercert pin-sha256:AbCdEf... # single key pin
sudo openconnect vpn.example.com --cafile /etc/ssl/internal-ca.pem --no-system-trust
Հաճախորդը համադրում է կտրված ամփոփում, ընդունելով նախածանցից հետո անգամ չորս նիշ, ինչը թակարդ է, ոչ թե հարմարավետություն։ Կրճատված արժեքը տեղում անցնում է և դեռ չի նույնականացնում ձեր նկատի ունեցած շլյուզը։ Ավելի լավ է պատճենեք ամբողջ տողը, որը հաճախորդը տպել է առաջին փորձի ժամանակ, քան այն նորից մուտքագրեք հաղորդագրությունից։ Այնուհետև պատրաստ տարբերակը տեղափոխեք փաթաթող սկրիպտի, միավորի ֆայլի կամ պրոֆիլի մեջ, որը գործարկում է կապը, որպեսզի վստահության որոշումը վերանայելի լինի, և հետագա խմբագրումները՝ դիտավորյալ։
Աշխատասեղանի գործարկիչները և NetworkManager փլագինը պահում են կապի արգումենտների իրենց պատճենը։ Սկավառակի վրա խմբագրված սկրիպտը չի հասնում ավելի վաղ ներմուծված պրոֆիլին, ուստի պահված արժեքը շարունակում է հաղթել։
Կառավարեք փոխանցումը՝ առանց ձեզ դուրս փակելու
Տարբերակը կարելի է տալ մեկից ավելի անգամ, ուստի պլանավորված փոփոխությունը կարող է միասին ընդունել ելքային և մուտքային բանալիները։ Ավելացրեք նոր ամրակապումը նախքան շլյուզի փոխվելը, պահեք երկուսն էլ ցանկում, քանի դեռ նստաշրջանները տեղափոխվում են, և հեռացրեք թոշակի անցածը, երբ հին բանալին անհետանա։ Այդ պատուհանը տեր է պահանջում, քանի որ մոռացված կրկնակի ամրակապումը բանալին թողնում է վստահելի՝ առանց որևէ մեկի հսկողության։ Նոր բանալու զույգ արտադրող վերակառուցումը կոտրում է մաքուր ամրակապումը, և վերականգնումը նույն ընթացակարգն է հակառակ ուղղությամբ։
Փոփոխության ամսաթիվը գրեք ամրակապման կողքին։ Առանց վերանայման ամսաթվի ամրակապումը ապագա խափանում է՝ շփոթեցնող սխալի հաղորդագրությամբ։
Բացառեք հաճախորդի տարբերակը նախքան վստահությունը խմբագրելը
Հնացած հաճախորդը կարող է ձախողվել նույնականացման պատասխանը վերլուծելիս, որը շլյուզը հետո փոխել է, և մակերեսային հաղորդագրությունը դեռ խոսում է կապի մասին, ոչ թե վերլուծիչի։ Համեմատեք տեղադրված տարբերակը շլյուզի փաստաթղթավորածի հետ, և նախքան վստահության որևէ կարգավորում փոխելը փորձարկեք ընթացիկ փաթեթը մեկանգամյա պրոֆիլում։
openconnect --version
Վերանորոգումից հետո ստուգեք երկու բան, ոչ թե մեկը՝ պորտալը բեռնվում է թունելով, և սովորական ներքին հասցեն պատասխանում է։ Ավարտված ձեռքսեղմումը միայն ապացուցում է, որ վստահության որոշումն ընդունվել է։