Pakiti zinaweza kufuata njia ya OpenVPN na bado zikamatwe na sera ya IPsec, na mchanganyiko huo unaonekana kama hitilafu ya uelekezaji kutoka kila pembe isipokuwa ile sahihi. Linux hutatua njia kisha hushauriana na hifadhidata tofauti ya sera za usalama, kwa hiyo njia mahususi zaidi ya lengwa haiondoi sera ya XFRM inayolingana. Dalili inayoonekana ni trafiki inayoondoka kwenye mwenyeji na haifiki kamwe, wakati vifungu vyote viwili vinajitangaza kuwa na afya. Chaguo tatu huitatua, na lipi unalochagua linategemea ni njia ipi kati ya hizo mbili inayopaswa kubeba kiambishi hicho.

Maamuzi mawili, si moja

Uchaguzi wa njia hujibu swali jembamba: ni hatua ipi inayofuata na anwani ya chanzo ipi inapaswa kubeba pakiti hii. Hifadhidata ya sera za usalama hujibu lingine: je, pakiti hii inahitaji ulinzi wa IPsec, na chini ya vichaguzi vipi. Vyote viwili hufanya kazi kwa pakiti moja, na kutimiza la kwanza hakusemi chochote kuhusu la pili. Ndiyo sababu kubadilisha kipimo au kuongeza njia tuli kunaweza kuacha dalili bila kuathirika.

Kichaguzi kipana cha IPsec ndiyo sababu ya kawaida. Sera inayolinda 172.16.0.0/12 pia inashughulikia 172.20.8.0/24, ambako msimamizi anaweza kuwa na nia ya kufika kwa njia ya kifungu cha OpenVPN badala yake. Nia hiyo inapatikana tu kwenye jedwali la uelekezaji, na hifadhidata ya sera haijawahi kuifahamu.

Chukulia hilo kama mgongano kati ya njia mbili za ulinzi zilizosanidiwa, si kama mashindano kati ya vipimo viwili. Marekebisho ni ya sehemu iliyosanidiwa na wigo usiofaa.

Soma njia ambayo kerneli huchagua kwa kweli

Anza na utafutaji ambao kerneli hufanya, ikiwa ni pamoja na anwani ya chanzo na kanuni yoyote ya sera inayoweza kuielekeza kwenye jedwali lingine. Njia iliyo kwenye jedwali kuu inaweza kutazamwa kamwe ikiwa kanuni ya awali inachagua jedwali lingine, na ulinganifu wa kiambishi kirefu zaidi unatumika tu ndani ya jedwali ambalo kanuni huchagua.

ip rule show
ip route show table all
ip route get 172.20.8.20 from 10.44.7.15

Amri ya mwisho ndiyo muhimu, kwa sababu inachapisha njia iliyochaguliwa pamoja na anwani ya chanzo ambayo kerneli ingetumia. Linganisha matokeo hayo na kichaguzi ambacho sera ya IPsec inalingana nacho. Njia inapoelekeza kwenye kiolesura cha OpenVPN na sera ikiwa bado inalingana na jozi hiyo hiyo, umerudia mgongano bila kubahatisha.

Weka dumps bila anwani zisizohusiana kabla hazijafika kwenye tiketi. Jedwali la uelekezaji kutoka kwa mwenyeji wa uzalishaji hubeba topolojia ya ndani, na ni mistari inayojibu swali pekee inayostahili kubandikwa.

Soma pia sera inayotumika

Orodha ya sera inaonyesha mwelekeo, vichaguzi na kiolezo kinachoamua kinachotokea kwa pakiti inayolingana. Soma mwelekeo wa kutoka kwanza, kisha upande wa kuingia kwa trafiki ya kurudi, kwa sababu ubaguzi wa upande mmoja huzalisha muunganisho unaoanza na haukamiliki kamwe.

ip -s xfrm policy
swanctl --list-sas

Linganisha vichaguzi kwenye orodha na viambishi ambavyo muunganisho ulijadiliana. Kuzima usakinishaji wa njia wa strongSwan hakuondoi sera hizo, na kubadilisha kipimo hakubadilishi jozi ipi ya chanzo na lengwa ambayo sera inalinda. Marekebisho haya mawili ya uongo yanafaa kuondolewa mapema, kwa sababu watu huyajaribu kwanza.

Ikiwa orodha haina sera yoyote kwa kiambishi ulichokitarajia, tatizo liko mahali pengine na jedwali la uelekezaji pengine linasema ukweli. Ikiwa ina sera pana zaidi inayoshughulikia kiambishi, umepata ukamataji.

Chaguo tatu wakati njia zote mbili ni halali

Kupunguza kichaguzi cha IPsec ndilo chaguo safi zaidi wakati kiambishi kipana kilikuwa faraja na si sharti. Kupunguza kichaguzi cha trafiki ya mbali hadi subnet ambazo kwa kweli ziko nyuma ya IPsec huondoa mgongano kwa kila mwenyeji mara moja, na gharama yake ni majadiliano mapya ya ufunguo, si sehemu mpya.

Ubaguzi wa kupitisha ni chaguo la upasuaji wakati kichaguzi kipana lazima kibaki. strongSwan inaunga mkono muunganisho tofauti ambao mtoto wake hutumia hali ya pass, ambayo huambia kerneli kwamba trafiki inayolingana haipaswi kuchakatwa na IPsec. Anwani ya mbali ya loopback huzuia muunganisho huo kuchaguliwa kwa wenzake wanaoingia, na vichaguzi lazima vieleze jozi halisi iliyoidhinishwa badala ya kila kitu.

connections {
    openvpn-exception {
        remote_addrs = 127.0.0.1
        children {
            openvpn-exception {
                local_ts = 10.44.7.0/24
                remote_ts = 172.20.8.0/24
                mode = pass
                start_action = trap
            }
        }
    }
}

Mifano ya usanidi wa strongSwan hurekodi aina hii ya sera na desturi ya mwenza wa loopback. Chaguo la tatu ni muundo unaotegemea uelekezaji na violesura vya XFRM, unaofunga sera kwa trafiki inayoelekezwa kupitia kiolesura kilichotajwa badala ya kichaguzi cha kimataifa. Ni uhamiaji na si marekebisho, na trafiki bado lazima itimize vichaguzi vilivyojadiliwa.

OptionUse it whenCost
Narrow the selectorThe broad prefix was convenienceA rekey and a policy review
Passthrough childThe broad selector must stayOne exception per intended pair
XFRM interfacePolicy should follow routingA design migration

Thibitisha ubaguzi bila kudhoofisha mengine

Baada ya kupakia mabadiliko, jaribu ubaguzi na lengwa la kawaida ambalo lazima libaki likilindwa. Angalia pande zote mbili, kisha angusha kifungu cha OpenVPN na uthibitishe kinachotokea kwa trafiki iliyobaguliwa. Ubaguzi unaotuma kiambishi hicho kwa utulivu na wazi wakati kifungu kiko chini ni uamuzi wa sera unaopaswa kuufanya kwa makusudi, si kuugundua wakati wa tukio.

Andika ni kiambishi kipi kinatumia njia ipi na kwa nini. Vinginevyo mhandisi anayefuata atakayeona kichaguzi kipana atafungua tena uchunguzi huo huo, na jibu litabaki kwenye ujumbe wa commit ambao hakuna anayesoma.

Makala zinazohusiana