VPN սերվերի ավտոմատ թարմացումները պահանջում են փորձարկված վերականգնման ուղի
Թարմացումը կարող է վերագործարկել հենց այն ծառայությունը, որով հասնում եք սերվերին։ Համեմատեք գոտուց դուրս կոնսոլը միայն թունելով վերականգնման պլանի հետ՝ նախքան ավտոմատացնելը։
Ավտոմատ թարմացումները խելամիտ քաղաքականություն են սերվերի համար, որին հասնում եք նրա սեփական VPN-ով, և միևնույն ժամանակ դրանք ինքներդ ստեղծած մեկ միակ խափանման կետ են։ Փաթեթի գործողությունը վերագործարկում է ծառայությունը, թունելը ընկնում է, և ձեր օգտագործած վարչական ուղին անհետանում է նրա հետ։ Գոյություն ունեն վերականգնման երկու մոդել, և դրանց միջև ընտրությունը կախված է մեկ պայմանից՝ ունե՞ք մուտքի ուղի, որը չի անցնում թարմացվող բանի միջով։
Վերականգնման երկու մոդել, մեկ վճռորոշ պայման
Առաջին մոդելը վստահում է թարմացմանը և ենթադրում, որ դրանից հետո կկարողանաք նորից միանալ։ Այն աշխատում է, երբ VPN-ը հոսթին հասնելու մի քանի եղանակներից մեկն է, և երբ թունելի խափանումը չի վերացնում այն ախտորոշելու ձեր ունակությունը։ Երկրորդ մոդելը նախապես տեղադրում է անկախ ուղի՝ սովորաբար հոսթինգի մատակարարի կոնսոլը, և թունելը դիտարկում է որպես այն, ինչը սպասարկումն ամենայն հավանականությամբ կկոտրի։ Երկու մոդելներն էլ պաշտպանելի են, և դրանցից միայն մեկն է պահանջում նախնական աշխատանք։
Վճռորոշ պայմանը հեշտ է ասել և հեշտ է բաց թողնել։ Եթե մեքենային տանող բոլոր վարչական ուղիներն անցնում են թարմացվող ծառայության միջով, ապա ընդհանրապես վերականգնման մոդել չունեք, միայն սպասում։ Ասացեք դա բարձր ձայնով փոփոխության վերանայման ժամանակ։
Այդ պայմանի ստուգումը տևում է տասը րոպե և պետք է տեղի ունենա առաջին ավտոմատ թարմացումից առաջ, ոչ թե միջադեպի ընթացքում։ Բացեք կոնսոլը, քանի դեռ ամեն ինչ աշխատում է, հաստատեք, որ հավատարմագրերը գործում են, և նորից փակեք այն։ Հաստատեք, որ կոնսոլը բացվում է այն հոսթի վրա, որը դուք կարծում եք։ Ապա հաստատեք, որ մուտքը, որը դուք իրոք կօգտագործեիք գիշերվա 3-ին, դեռ աշխատում է։
Այդ վերջին մասը ավելի կարևոր է, քան հնչում է։ Կոնսոլի հաշիվը, որի գաղտնաբառը փոխվել է վեց ամիս առաջ և երբեք չի ստուգվել, վերականգնման ուղի չէ, այլ փաստաթուղթ է, որը նկարագրում է այդպիսի ուղի։
Ինչ չի վերականգնում պահուստային պատճենը
Կազմաձևման արխիվը ֆայլերի գրառում է, իսկ թարմացումը փոխում է ավելին, քան ֆայլերը։ Փաթեթի վիճակը, միջուկի մոդուլները, միացված միավորների հղումները և առանձին գործիքով կիրառված հրապատի կանոնները բոլորը ապրում են կազմաձևման պանակից դուրս, և դրանք անտեսող վերականգնումը ստեղծում է մեքենա, որը կազմաձևված է թվում և չի փոխանցում։
| What changed | Restored by a configuration backup | Needs its own action |
|---|---|---|
| Service unit or startup ordering | Partly, if the unit file was included | Package state and enabled links |
| Kernel module or interface support | No | Kernel or module rollback, or a boot-time decision |
| Peer or device authorization | Only if the backup predates the revocation | A deliberate decision about which peers return |
| Firewall rules applied outside the config | Only if they were captured | Replaying and verifying each rule |
Լիազորումը արժանի է իր սեփական տողին։ Վտանգված սարքը հեռացնելուց առաջ արված պահուստային պատճենը հաճույքով կվերականգնի այդ սարքի մուտքը։ Անջատման ընթացքում դրան վերադառնալը այն ձևն է, որով մեկ միջադեպը դառնում է երկու, և վերականգնելու որոշումը պետք է կայացվի գործընկերների վերաբերյալ նույնքան հստակ, որքան ֆայլերի վերաբերյալ։
Հետ գլորման մեխանիզմը նույնպես կարևոր է։ Ավելի հին գործարկվող ֆայլը փաթեթով կառավարվող ֆայլի վրա պատճենելը փաթեթի փոփոխության աջակցվող հակադարձումը չէ, և այն թողնում է փաթեթի տվյալների բազան նկարագրել վիճակ, որին ֆայլային համակարգը չի համապատասխանում։ Օգտագործեք փաթեթների կառավարչի սեփական իջեցման ուղին կամ մատակարարի առաջարկած պահապատկերը։ Այն իջեցումը, որը գրանցում է փաթեթի տվյալների բազան, այն է, որը կարող եք կրկնել։
Սրանից ոչ մեկը պահուստային պատճենների դեմ չէ։ Այն կողմ է, որ իմանաք, թե որ շերտն է ծածկում յուրաքանչյուր արտեֆակտ, որովհետև մասնակի վերականգնման խափանման եղանակն ավելի շփոթեցնող է, քան սկզբնական անջատումը։ Գրեք շերտը յուրաքանչյուր պատճենի կողքին runbook-ում։
Ստուգակետ, թարմացում, ապա ստուգում դրսից
Գրանցեք փոփոխությունից առաջ վիճակը այնպիսի ձևով, որը հետո կարող եք համեմատել՝ տեղադրված տարբերակները, ներգրավված ծառայության միավորները, լսող սոկետները և ընթացիկ գործընկերների ցանկը։ Linux հոսթի վրա չորս հրաման ծածկում է դրա մեծ մասը։
systemctl list-units --type=service | grep -E 'openvpn|wg-quick'
ss -lunp | grep -E ':51820|:1194'
journalctl -u wg-quick@wg0 --since '-10 min'
Առաջինը ցույց է տալիս, թե որ միավորներն են գոյություն ունեն և արդյոք աշխատում են, երկրորդը հաստատում է, որ լսողն իրոք կապված է, իսկ երրորդը ձեզ տալիս է ծառայության սեփական պատումը վերջին րոպեների մասին։ Դրանցից ոչ մեկը չի ապացուցում, որ հաճախորդը կարող է միանալ, դրա համար հաջորդ քայլը կատարվում է հոսթից դուրս։ Պահեք այդ ցուցանիշները որպես ձեր համեմատության հիմք։
Ստուգեք ցանցից, որը չի օգտագործում թունելը՝ նույնականացրեք մեկ լիազորված հաճախորդի, լուծեք անուն և հասեք մեկ նախատեսված հավելվածի։ Ինտերֆեյսը վերևում է ասող տեղական կարգավիճակի տողը հայտարարություն է ինտերֆեյսի մասին, ոչ թե երթուղավորման, բանալիների կամ գործընկեր ընդունող քաղաքականության։
Ապա դիտավորյալ փորձարկեք վերամիացման ուղին։ Մեկ անգամ վերագործարկեք ծառայությունը և հաստատեք, որ թունելը վերադառնում է առանց ձեռքով միջամտության, որովհետև ծառայությունը, որը ճիշտ է սկսվում միայն բեռնման ժամանակ, այն ծառայությունն է, որը ձեզ կզարմացնի ամենավատ պահին։
Երբ այն ձախողվում է, օգտագործեք փորձարկված ուղին
Վերականգնման հաջորդականությունը փայլուն չէ և այն աշխատում է՝ հասեք հոսթին անկախ ուղիով, կարդացեք ծառայության սեփական մատյանները և վերականգնեք խափանմանը համապատասխանող կոնկրետ ստուգակետը։ Փորձի ընթացքում փոխեք մեկ բան, որպեսզի հաջորդ մատյանի ընթերցումը ինչ-որ բան նշանակի։
Դիմացեք կապը վերականգնելու համար մի քանի չգրանցված փոփոխություն անելու ցանկությանը։ Հինգ միաժամանակյա խմբագրումով վերանորոգված մեքենան հետո հնարավոր չէ բացատրել, և հաջորդ թարմացումը նորից կներմուծի դրանցից այն, որն իրոք կրում էր ծանրաբեռնվածությունը։
Ապա որոշեք մշտական քաղաքականությունը ապացույցներով։ Եթե թարմացումը բացահայտեց կախվածություն, որը ոչ ոք չէր փաստաթղթավորել, ուղղումը փաստաթղթավորում և թեստ է, ոչ թե թարմացումների անջատում։ Եթե այն բացահայտեց ծառայություն, որը չի կարող մաքուր վերագործարկվել, ուղղումը միավորում է, ոչ թե ժամանակացույցում։
Համեմատությունը մաքուր լուծվում է հենց պայմանը անվանվում է։ Անկախ ուղին ավտոմատ թարմացումները դարձնում է կառավարելի ռիսկ։ Դրա բացակայությունը նույն քաղաքականությունը դարձնում է անհայտ վերականգնման ժամանակով պլանավորված անջատում, և ոչ մի քանակությամբ ավտոմատացում չի փոխում այդ թվաբանությունը։