Hub tí ń ṣiṣẹ́ WireGuard lè ya àwọn ẹgbẹ́ alábàákẹ́gbẹ́ sótọ̀ọ̀tọ̀ láìsí ojú-ọ̀nà tàbí tábìlì ìtọ́sọ́nà ọ̀tọ̀ọ̀tọ̀ fún ẹgbẹ́ kọ̀ọ̀kan. Ọ̀nà méjì ni ń ṣe iṣẹ́ náà, ìdàpọ̀ wọn sì ni ìdí tó wọ́pọ̀ tí ìlànà fi dàbí ẹni pé ó tọ́ tí kò sì ṣe nǹkan. Ẹ̀ka kan ń pinnu ẹni tí ó lè béèrè àdírẹ́sì orísun. Èkejì ń pinnu ibi tí ó yọ̀ǹda fún pákítì yẹn láti lọ.

Iṣẹ́ méjì, tí a pa mọ́ lọ́tọ̀ọ̀tọ̀

Ẹ̀ka tunnel ń dá ìbéèrè tóóró lóhùn: ṣé kọ́kọ́rọ́ alábàákẹ́gbẹ́ yìí fọwọ́ sí àdírẹ́sì orísun inú yìí. Ẹ̀ka ìṣíwájú ń dá ìbéèrè tó gbòòrò lóhùn: ṣé pákítì yìí lè jáde lọ sí ibi àfojúsùn yẹn. Kò sí èyí tí ó dá ìbéèrè èkejì lóhùn, kò sì sí èyí tí ó jẹ́ ìlànà àwọn ìwọlé pípé ní ara rẹ̀.

Ìpínyà yẹn ni ìdí tí alábàákẹ́gbẹ́ lè jẹ́ ẹni tí a fọwọ́ sí, tí a sì fún ní àdírẹ́sì tọ́, tí kò sì lè dé ọ̀dọ̀ ẹ̀rọ tí kò yẹ kí ó dé. Ó tún ṣàlàyé ìdàkejì: òfin odi iná tí ó gba ohun gbogbo láàyè kò fi nǹkan kan hàn nípa ẹni tí ó lè béèrè àdírẹ́sì wo.

Ṣe àpẹẹrẹ àwọn ẹ̀ka méjèèjì pọ̀, lẹ́yìn náà dán méjèèjì wò. Ìṣètò tí ó tọ́ ní ẹ̀ka kan tí a kò sì dán wò ní èkejì yóò kùnà ní ṣíṣí tàbí ní pípadé gbéèrè tí ó dá lórí iye àìpinnu.

Fún olúkúlùkù alábàákẹ́gbẹ́ ní àdírẹ́sì tirẹ̀ nìkan

Àwọn alábàákẹ́gbẹ́ alápòpọ̀ ẹ̀rọ ń tàn ọ́ láti fi gbogbo ìwọ̀n ẹgbẹ́ náà fún ní ẹ̀gbẹ́ olùsìn. Ìyọ̀ǹda yẹn jẹ́ ìbéèrè àdírẹ́sì orísun, nítorí náà alátìlẹ́yìn tàbí aláìtòtọ́ kìkì lè gbé àdírẹ́sì kankan nínú ìwọ̀n náà kalẹ̀, tunnel yóò sì gbà á. Pín /32 fún olúkúlùkù alábàákẹ́gbẹ́ fún àdírẹ́sì inú tirẹ̀. Fi àwọn ìwọ̀n ẹgbẹ́ kalẹ̀ lórí àwọn alátìlẹ́yìn nìkan, níbi tí wọ́n ti ń ṣàpèjúwe àwọn ibi àfojúsùn tí alátìlẹ́yìn yẹn lè dé kì í ṣe àwọn orísun tí ó lè lò.

Nígbà náà odi iná yóò bá orísun kan tí ó lè gbẹ́kẹ̀lé mu. Òfin tí a kọ fún ìwọ̀n ẹgbẹ́ náà ṣì jẹ́ ìkójọpọ̀ tí ó wúlò, yóò sì di ohun tí ó níláárí nìkan nígbà tí kò sí alábàákẹ́gbẹ́ kankan tí ó lè béèrè àdírẹ́sì tí ó jẹ́ ti ọmọ ẹgbẹ́ mìíràn.

Kọ ìlànà ìṣíwájú tí ó ń ya àwọn ẹgbẹ́

Ìrìnàjò tí ó ní ìtumọ̀ níbí ń wọlé tí ó sì ń jáde nípasẹ̀ ojú-ọ̀nà tunnel kan náà, nítorí náà ó ń kọjá ọ̀nà ìṣíwájú kì í ṣe ọ̀nà ìwọlé ẹ̀rọ. Àwọn òfin jẹ́ ti ẹ̀wọ̀n ìṣíwájú tí ó wà tẹ́lẹ̀ ti olùdarí odi iná yòówù tí ó ni ẹ̀rọ náà, wọ́n sì jẹ́ àjákù kì í ṣe àkójọ òfin pípé.

iifname "wg0" oifname "wg0" ip saddr 10.66.10.0/24 ip daddr 10.66.10.0/24 accept
iifname "wg0" oifname "wg0" ip saddr 10.66.20.0/24 ip daddr 10.66.20.0/24 accept
iifname "wg0" oifname "wg0" drop

Àwọn òfin méjì àkọ́kọ́ ń gba ìrìnàjò láàyè nínú ẹgbẹ́ kọ̀ọ̀kan. Èyí tí ó kẹ́yìn ń dí ohun mìíràn yòówù tí ó bá kọjá ojú-ọ̀nà yẹn, ìyẹn sì ni ó ń ṣẹ̀dá ìyàsọ́tọ̀ láàárín àwọn ẹgbẹ́. Fi àwọn òfin tí ó yéé fún ìdílé àdírẹ́sì mìíràn kún un bí o bá nílò wọn, nítorí drop tí a kọ fún IPv4 kò fọwọ́ sí tàbí ṣàpèjúwe ìhùwàsí IPv6.

Ìtẹ̀lé ni ó ń pinnu bóyá ìlànà náà wúlò

Ìtẹ̀lé àwọn òfin ṣe pàtàkì ju àjákù náà fúnra rẹ̀. Òfin gbogbogbò tí ó gba àwọn ìsopọ̀ tí a ti dá sílẹ̀ tí a sì fi sí iwájú àwọn àkọsílẹ̀ wọ̀nyí yóò jẹ́ kí ṣíṣàn àárín-ẹgbẹ́ àtijọ́ tẹ̀síwájú, nítorí náà ìyàsọ́tọ̀ wúlò fún àwọn ìsopọ̀ tuntun nìkan. Pinnu èwo nínú àwọn àbájáde méjèèjì ni o fẹ́ kí o tó tún gbé e.

Ìdájọ́ gbígba pẹ̀lú kì í ṣe ìparí nígbà gbogbo láàárín àwọn ẹ̀wọ̀n ní orí ìkọ̀ kan náà. Bí ẹ̀wọ̀n ìpìlẹ̀ mìíràn bá ṣiṣẹ́ lẹ́yìn náà, ìlànà tí ó wúlò ni àkópọ̀, nítorí náà yẹ àwọn olùkà sílẹ̀ wò dípò fáìlì tí o yí padà. Àwọn olùkà ni ẹ̀rí tí ó pọ́n jùlọ tí ó wà. Òfin tí kò ní ìṣirò pákítì kò bá a mu, òfin tí ó bá a mu nígbà tí ẹ̀wọ̀n tó ń bọ̀ ń gbà á sì sọ fún ọ pé drop wà ní ibi tí kò tọ́.

Dán matrix wò, kì í ṣe iye fáìlì

Kọ́ matrix kékeré ti àwọn àbájáde tí a retí kí o sì yẹ̀wò gbogbo pátákó. Ẹgbẹ́ A sí ẹgbẹ́ A yẹ kí ó ṣiṣẹ́, ẹgbẹ́ B sí ẹgbẹ́ B yẹ kí ó ṣiṣẹ́, A sí B kò yẹ kí ó ṣiṣẹ́, ní ẹ̀gbẹ́ méjèèjì àti fún ìdílé àdírẹ́sì méjèèjì bí o bá ń gbà wọ́n.

nft list ruleset
wg show wg0 allowed-ips
ping -c 2 10.66.10.5
conntrack -L -s 10.66.20.7 2>/dev/null | head

Àwọn méjì àkọ́kọ́ ń fi ohun tí a ti ṣètò hàn. Ping láti ọ̀dọ̀ ọmọ ẹgbẹ́ tí kò tọ́ ń fi ohun tí ń ṣẹlẹ̀ ní ti gidi hàn. Àkójọ conntrack ń fi hàn bóyá a ṣì ń gba ṣíṣàn tí ó ti pẹ́, àti bẹ́ẹ̀ ni ìyípadà ìyàsọ́tọ̀ ṣe ń kùnà ní ìdákẹ́jẹ́ láti wá sí ipò.

Àwọn iṣẹ́ ẹ̀rọ lórí hub àti ààyè sí LAN kan lẹ́yìn rẹ̀ jẹ́ ọ̀nà ọ̀tọ̀ọ̀tọ̀ pẹ̀lú ìlànà ọ̀tọ̀ọ̀tọ̀. Ṣàkọsílẹ̀ èwo nínú wọn ni matrix ń bo, nítorí ìdánwò tí ó ń yẹ̀wò ìrìnàjò alábàákẹ́gbẹ́-sí-alábàákẹ́gbẹ́ nìkan kò sọ nǹkan kan nípa èyíkéyìí nínú wọn.

Àwọn àpilẹ̀kọ tó jọra