EAP նույնականացումը IKEv2-ի վրա կարող է հաճախորդից պահանջել մեկ միացման մեջ ստուգել երկու տարբեր սերվերի անվանում։ IKE-ն ավարտող դարպասը ներկայացնում է մեկ ինքնություն, իսկ ներքին TLS փոխանակումն ավարտող EAP հետնաբաժինը կարող է ներկայացնել մեկ այլը։ strongSwan-ում դրանք ապրում են տարբեր կոնֆիգուրացիոն բլոկներում, և անունը սխալ բլոկում դնելը առաջացնում է խափանում, որը նման է վկայագրի խնդրի։ Հենց թե որ ստուգումը ձախողվեց, դա է ասում, թե որ բլոկը խմբագրել։

Մեկ միացում, երկու սերվերի ինքնություն

Առաջին ինքնությունը պատկանում է IKE փոխանակմանը։ Հաճախորդը հավաքում է հասցե և սպասում, որ հակառակորդը ապացուցի որոշակի ինքնություն, սովորաբար դարպասի վկայագրի անունը։

Երկրորդը պատկանում է EAP-ին։ PEAP-ի կամ TTLS-ի դեպքում հաճախորդը TLS թունել է կառուցում դեպի նույնականացման սերվեր IKE SA-ի ներսում, և այդ ներքին սերվերը ներկայացնում է իր սեփական վկայագիրը։ Երբ հետնաբաժինը առանձին հոսթ է, նրա անունը տարբերվում է դարպասի անունից։ Այն հաճախորդը, որը ստուգում է միայն առաջին անունը, ընդունում է այն ամենը, ինչ պնդում է երկրորդը։ Իսկ այն հաճախորդը, որը երկու տեղերում էլ մեկ անունով է կարգավորված, ձախողվում է հենց որ դրանք իսկապես տարբերվում են։

Երկու անուններն էլ գալիս են օպերատորի կոնֆիգուրացիայից, այլ ոչ այն վկայագրից, որը վերացնում է սխալը։ Օպերատորից տեղաբաշխման մանրամասները հարցնելն ավելի արագ է, քան երկու հոսթի անուն գուշակելը։

Որ դաշտը որ շերտին է պատկանում

swanctl-ում հասցեն և IKE ինքնությունը առանձին կարգավորումներ են, իսկ EAP ինքնությունը երրորդն է։

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

connections {
    office {
        remote_addrs = vpn.example.com
        local {
            auth = eap-peap
            aaa_id = auth.example.com
        }
        remote {
            auth = pubkey
            id = vpn.example.com
        }
    }
}

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

Ինչու aaa_id-ն ապրում է local-ի տակ

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

Լռելյայն արժեքը ծուղակը դարձնում է ավելի սուր։ Երբ բացահայտ արժեք սահմանված չէ, սպասվող AAA ինքնությունը հետևում է հեռավոր ինքնությանը, ուստի մեկ անունով տեղաբաշխումն աշխատում է և թաքցնում տարբերությունը։ Բացահայտ արժեքը կարևոր է միայն այն ժամանակ, երբ EAP տեղաբաշխումն իսկապես ավարտվում է այլ տեղ։ Առանց այդ պատճառի այն այլ անվան վրա դնելը ստեղծում է խափանում, որը օպերատորը չի կարող վերարտադրել։ Կարդացեք տեղաբաշխումը, նախքան երկրորդ անուն հորինելը։

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

Ինտերֆեյսներ, որոնք չեն կարող արտահայտել բաժանումը

NetworkManager պրոֆիլը swanctl-ի նույն կոնֆիգուրացիոն ինտերֆեյսը չէ։ Դրա հետևում գտնվող հավելվածը ներկայացնում է ինքնության կառավարման ավելի նեղ հավաքածու, և թե որոնք գոյություն ունեն, կախված է տեղադրված տարբերակից։

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

Այլընտրանքը հաճախորդի վրա հորինելու բան չէ։ Պահանջեք աջակցվող դասավորությունը գրավոր, ապա պահեք այդ պատասխանը պրոֆիլի հետ։

Տարբերեք ինքնության անհամապատասխանությունը ժամկետանց վկայագրից

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

swanctl --list-conns
swanctl --list-sas
journalctl -u strongswan -n 50 --no-pager

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

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