Ipo trap strongSwan: kí ni idi tí tunnel IPsec ń dúró de ìrìnàjò
Tunnel IPsec tí kò ṣiṣẹ́ lórí ìbéèrè kò fi CHILD SA hàn títí pakẹ́tì kan yóò fi bá ìlànà trap rẹ̀ mu. Ka ipò, ṣàyẹ̀wò ohun tí ń tan án, kí o sì mọ ìgbà tí start yẹ.
Kò sí CHILD SA tí ó farahàn nínú ìjáde ipò, tunnel dà bí ẹni tí ó kú, lẹ́yìn náà ping sí subnet tí ó jìnnà mú u sókè. Nínú ìṣètò IPsec lórí ìbéèrè, ìtẹ̀lélẹ̀ yẹn ni èròǹgbà, kì í ṣe àṣìṣe. Ìlànà trap ń fi olùyàn kan sínú ẹ̀rọ, ó sì ń dúró, pakẹ́tì àkọ́kọ́ tí ó bá a mu ni ó ń bẹ̀rẹ̀ IKE àti ìjíròrò CHILD SA.
Apá kan ìdàrúdàpọ̀ ni ọ̀rọ̀: “up” ni a ń lò fún ipò méjì ọ̀tọ̀ọ̀tọ̀. Ìṣètò náà ti gbé wọlé, ìlànà kernel sì wà, ṣùgbọ́n ìsopọ̀ dátà kò sí. Olùṣọ́ tí ó ń ka SA tí ń ṣiṣẹ́ nìkan yóò sọ ojú-ìwé tí ó lera di ìparẹ́ nígbà tí kò bá sí ẹnìkan tí ń fi ìrìnàjò ránṣẹ́ sí i.
Tunnel trap tí kò ṣiṣẹ́ lórí ìbéèrè kò ní CHILD SA láti fi hàn
Ìkọsílẹ̀ trap kò jẹ́rìí ohunkóhun fúnra rẹ̀. Ó ń béèrè lọ́wọ́ kernel pé kí ó di ìlànà mu fún ìrìnàjò tí a yàn, kí ó sì gbé acquisition sókè nígbà tí pakẹ́tì kan bá nílò ìlànà yẹn. Daemon ń gba acquisition, ó ń bá ìtumọ̀ child mu, ó sì ń ṣe ìjíròrò láti ibẹ̀. Títí di àkókò yẹn, kò sí IKE SA fún ìfihàn pẹ̀lú, ìdí nìyẹn tí àwọn àkójọ méjèèjì fi lè ṣófo ní àkókò kan náà.
Ìtẹ̀lélẹ̀ yẹn ni ó ń jẹ́ kí àwọn log lè di kíkà. Acquisition wá ní àkọ́kọ́, lẹ́yìn náà IKE_SA_INIT àti IKE_AUTH, lẹ́yìn náà CHILD SA. Bí log bá parí lẹ́sẹ̀kẹsẹ̀ lẹ́yìn acquisition, ohun tí ń tan án ti ṣiṣẹ́. Ìjíròrò kùnà, ìbéèrè tí ó tẹ̀lé wà nípa ẹ̀rí ìdánimọ̀, àbá tàbí ìrékọjá, kì í ṣe nípa trap.
Pẹ̀lú backend kernel Linux, o lè rí ìlànà náà kí SA kankan tó wà. Ṣe ip xfrm policy kí o sì wá olùyàn tí ó ní ìtọ́sọ́nà out àti àpẹẹrẹ tí ó ń tọ́ka sí ìsopọ̀. Ìkọsílẹ̀ yẹn ni ipò lórí ìbéèrè, ìsíwájú rẹ̀ sì ni ohun àkọ́kọ́ tí a gbọdọ̀ fi dáni.
start_action ń pinnu bóyá ohunkóhun yóò dúró rárá
Child kọ̀ọ̀kan nínú swanctl.conf ń gbé start_action. start ń bẹ̀rẹ̀ nígbà tí a bá gbé ìṣètò wọlé, trap ń fi ìlànà sínú ẹ̀rọ, ó sì ń dúró, none sì ń fi ìbẹ̀rẹ̀ lé ohun mìíràn lọ́wọ́. Nìkan trap ni ó ń mú ìhùwàsí “ping, ó sì gòkè” tí a ṣàlàyé lókè wá.
children {
office-lan {
local_ts = 192.168.50.0/24
remote_ts = 192.168.70.0/24
start_action = trap
}
}
Àwọn olùyàn ìrìnàjò méjì ń ṣàlàyé ohun tí a kà sí ìfẹ́ni, pakẹ́tì kan láti ọ̀dọ̀ agbàlejò tí ó wà ní ìta àwọn ìpilẹ̀ yẹn kò tan trap, a ń tọ́ ọ lọ́nà déédéé. Fífẹ̀ àwọn olùyàn mú kí ohun tí ń tan án le koko sí i, yóò tún fẹ̀ ìwọ̀n tí tunnel ń sọ pé ó ń dáàbò bò, nítorí náà mú wọn láti inú ìrìnàjò tí o ní lọ́kàn gan-an láti fi ṣe ààtò.
Ìwé ìtọ́kasí swanctl.conf ń kọ àwọn iye tí a gbà, pẹ̀lú àwọn ìgbésẹ̀ close àti DPD ọ̀tọ̀ọ̀tọ̀ tí ó ń ṣàkóso ohun tí ó ṣẹlẹ̀ lẹ́yìn tí SA bá wà.
Wá ibi tí ohun tí ń tan án ti tan rárá
Bẹ̀rẹ̀ pẹ̀lú swanctl --list-conns kí o sì dáni pé a ti gbé child wọlé pẹ̀lú ìgbésẹ̀ tí o ní lọ́kàn. Lẹ́yìn náà fi pakẹ́tì kan ránṣẹ́ láti agbàlejò tí ó wà nínú local_ts sí àdírẹ́sì tí ó wà nínú remote_ts kí o sì wo swanctl --list-sas. Bí ìjáde kò bá yípadà, kò sí acquisition tí ó dé ọ̀dọ̀ daemon.
Àwọn ìdí méjì tí ó wọ́pọ̀ fún trap tí ó dákẹ́: a ti ṣe source-NAT lórí pakẹ́tì kí ó tó dé ìlànà, kò sì bá local_ts mu mọ́, tàbí ìsopọ̀ kò gbé wọlé rí nítorí àṣìṣe ìkọ̀wé tàbí ẹ̀rí ìdánimọ̀. Ṣe swanctl --load-all lẹ́ẹ̀kan sí i, kí o sì ka ìjáde rẹ̀ kí o tó fi ọwọ́ kan àwọn olùyàn. Ìsopọ̀ tí kò gbé wọlé kò fi ìlànà kankan sínú ẹ̀rọ, nítorí náà kò sí ohun tí ìrìnàjò lè tan.
Ìtọ́sọ́nà pẹ̀lú ṣe pàtàkì: trap tí a fi sínú ẹ̀rọ fún ìrìnàjò tí ń jáde kò bẹ̀rẹ̀ lórí pakẹ́tì tí ń wọlé. Bí ẹ̀gbẹ́ tí ó jìnnà yóò gbé tunnel sókè, ó nílò trap tirẹ̀, tàbí ẹ̀gbẹ́ yìí nílò start.
Dídúró de pakẹ́tì àkọ́kọ́ kì í ṣe pàṣípààrọ̀ tí ó tọ́ ní gbogbo ìgbà
Àwọn ìpàdé alábàápín ń wòye iye owó ìṣètò. Ìbéèrè àkọ́kọ́ ń san owó pàṣípààrọ̀ IKE àti ìjíròrò CHILD, alábàárà tí ó ní àkókò kúkúrú sì lè juwọ́ sílẹ̀ kí SA tó wà. start onítẹ̀síwájú ń mú kí ìdádúró pakẹ́tì àkọ́kọ́ yẹn kúrò. Ṣùgbọ́n ó ń pa tunnel mọ́ fún ìrìnàjò tí ó lè máà dé rí.
Òtítọ́ mẹ́ta ń pinnu yíyàn: báwo ni a ṣe ń lo ọ̀nà náà, bóyá ìbéèrè àkọ́kọ́ ní àkókò tí ó há, àti bóyá a lè dé ọ̀dọ̀ ẹlẹgbẹ́ nígbà ìbẹ̀rẹ̀. Ìrìnàjò àpapọ̀ lẹ́ẹ̀kọ̀ọ̀kan àti ẹlẹgbẹ́ tí ó lè wà ní àìsopọ̀ nígbà ìbẹ̀rẹ̀, àwọn méjèèjì ń ṣàtìlẹ́yìn trap. Alábàárà tí ó ní ìfòyà ìdádúró àti ẹlẹgbẹ́ tí a ń lè dé ọ̀dọ̀ nígbogbo ìgbà ń ṣàtìlẹ́yìn start. Bí ẹ̀gbẹ́ méjèèjì bá lè bẹ̀rẹ̀, ẹ gbà pé ẹnìkan ni ó ni ohun tí ń tan án kí ẹ má baà ní ìjíròrò ìlọ́po méjì.
Ìlànà tí a ti fi sínú ẹ̀rọ pẹ̀lú kì í ṣe ìdánilójú àìsí jíjáde. Bí ohun tí a béèrè bá jẹ́ fail-closed, ogiri-iná gbọdọ̀ ju ìrìnàjò tí kò ní SA nù, ìlànà yẹn sì ń gbé ní ìta ìtumọ̀ child.
Kọ àwọn ìlà mẹ́ta tí yóò parí àríyànjiyàn tí ó tẹ̀lé
Kọ àwọn olùyàn, ìgbésẹ̀ ìbẹ̀rẹ̀ àti ìjáde pàtàkì tí ó fi hàn pé ìlànà wà láìsí SA. Àwọn ìlà mẹ́ta yẹn ń ya “lórí ìbéèrè àti àìṣiṣẹ́” kúrò nínú “kò gbé wọlé” ní ìgbà tí ẹnìkan bá tún sọ pé tunnel ti lọ sílẹ̀. Wọ́n gba ìṣẹ́jú kan láti kọ̀ wọ́n. Láìsí wọn, ìwádìí kan náà yóò tún bẹ̀rẹ̀ láti òdo.
Dán wò láti agbàlejò tí ó wà nínú olùyàn gan-an. Ping láti router fúnra rẹ̀ sábà máa ń gbà ọ̀nà mìíràn, kò sì fi ohunkóhun hàn nípa ìlànà tí ń dáàbò bo subnet tí ó wà lẹ́yìn rẹ̀.