Ìdí tí nftables kò fi lè rí ìrìnàjò OpenVPN láàárín àwọn kíláìntì
A ń fi ìrìnàjò láàárín àwọn ẹlẹgbẹ́ ránṣẹ́ nínú ìlànà VPN, nítorí náà àwọn kíkà ìtẹ̀síwájú kò mì rárá. Láti kà á, o gbọdọ̀ yan láàárín ọ̀nà kẹ́nẹ́lì àti ọ̀nà ìlànà.
Àwọn kíláìntì méjì lórí ọ̀kan ṣẹ́bà ń pààrọ̀ fáìlì, ìgbékalẹ̀ náà ń ṣàṣeyọrí, àti gbogbo òfin ìtẹ̀síwájú tí o bá tọ́ka sí ọ̀nà abẹ́lẹ̀ ń ròyìn pé kò sí pákẹ́ẹ̀tì kankan. Àwọn òfin kò bàjẹ́ àti pé ẹ̀wọ̀n kò sí ní ibi tí kò tọ́. Nígbà tí a bá tan ìtẹ̀síwájú láàárín àwọn ẹlẹgbẹ́, a ń fi pákẹ́ẹ̀tì náà ránṣẹ́ nínú ìlànà ṣẹ́bà àti pé ìkópọ̀ ẹ̀rọ gbàlejò kò di olùdarí ọ̀nà rárá, nítorí náà kò sí ohun tí ògiri iná kẹ́nẹ́lì lè kà. Yíyé ìpínyà yẹn ló ń pinnu bóyá o máa pa ọ̀nà kúkúrú mọ́ tàbí kí o tún ọ̀nà kọ́ nípasẹ̀ kẹ́nẹ́lì.
Tẹ̀lé pákẹ́ẹ̀tì kan nípasẹ̀ ṣẹ́bà
Nínú ọ̀nà abẹ́lẹ̀ tí a ti ṣe ìtọ́nisọ́nà, dímọ́nì ń fi pákẹ́ẹ̀tì tí a ti yọ àṣírí rẹ̀ ti gbogbo kíláìntì fún ẹ̀rọ ọ̀nà abẹ́lẹ̀. Láti ibẹ̀ ni ẹ̀rọ gbàlejò ti ń tọ́nisọ́nà rẹ̀, ìkọ́ ìtẹ̀síwájú ń ṣiṣẹ́, àti pé òfin tí ó bá ẹ̀rọ ọ̀nà abẹ́lẹ̀ mu lè ka ìrìnàjò náà tàbí kí ó sọnù. Ìyẹn ni ọ̀nà tí ọ̀pọ̀ àpẹẹrẹ ògiri iná ń gbà.
| Forwarding path | Who decides | What the host firewall sees |
|---|---|---|
| Kernel routing between clients | Host routing table and forward rules | Every inner packet, with interface names |
| Peer forwarding inside the server process | The VPN daemon's own peer table | Only the outer encrypted transport |
Ọ̀nà kúkúrú yọ ẹ̀rọ gbàlejò kúrò ní àárín. A ń fi pákẹ́ẹ̀tì tí a ti yọ àṣírí rẹ̀ ti ìpàdé kan fún ìpàdé mìíràn nínú dímọ́nì, àti pé a kò gbé pákẹ́ẹ̀tì inú jáde lórí ẹ̀rọ ọ̀nà abẹ́lẹ̀ rárá, bẹ́ẹ̀ ni ẹ̀rọ gbàlejò kò tọ́nisọ́nà rẹ̀. Ìrìnàjò tí a fi àpò wé ṣì ń kọjá ní ojú-ọ̀nà ti ara, nítorí náà gbígbà jáde lóde dà bíi ti ń ṣiṣẹ́ nígbà tí àwọn òfin inú wà ní ìdákẹ́jẹ́. Gbígbà tí a ṣe lórí ẹ̀rọ ọ̀nà abẹ́lẹ̀ kò fi ohunkóhun hàn rárá, èyí tí ń yani lẹ́nu fún ẹnikẹ́ni tí ó retí láti wo ìgbékalẹ̀ níbẹ̀. Àìdọ́gba yẹn ni ọ̀nà tí ó yára jù láti dá ọ̀nà kúkúrú mọ̀ láti ìta dímọ́nì.
Ìdánwò kíkà tí ń pinnu ọ̀nà tí ó gbà
So kíkà mọ́ òfin tí ó yẹ kí ó wúlò, ṣe ìgbékalẹ̀ láàárín àwọn kíláìntì méjì tí òfin yẹn yẹ kí ó dènà, lẹ́yìn náà ka kíkà náà.
sudo nft list ruleset
sudo nft add rule inet filter forward iifname "tun0" oifname "tun0" counter accept
sudo nft list chain inet filter forward
Bí ìgbékalẹ̀ bá ṣàṣeyọrí tí kíkà sì dúró ní òdo, kẹ́nẹ́lì kò tí ì ṣe àwọn pákẹ́ẹ̀tì yẹn rárá, àti pé kò sí àtúnṣe òfin tí yóò yí i padà. Tún ìdánwò kan náà ṣe lórí iṣẹ́ kan lórí ṣẹ́bà fúnra rẹ̀, nítorí pé ìṣàn yẹn ń kọjá ní ìkópọ̀ ẹ̀rọ gbàlejò àti pé kíkà rẹ̀ ń mì. Ìfiwéra àwọn èsì méjì náà ni ó ń fúnni ní ìdáhùn.
Àlàyé méjì ń dènà kíkà tí kò tọ́. Orúkọ ojú-ọ̀nà tí a kọ sínú àmì ẹ̀wọ̀n kò ṣe àyọkúrò ohunkóhun fúnra rẹ̀, nítorí pé ìbámu ń ṣẹlẹ̀ lórí àwọn pápá ojú-ọ̀nà nínú àwọn òfin. Àti pé apẹẹrẹ afárá ti ìpele 2 ń hu ìwà mìíràn: níbẹ̀ àwọn kíláìntì ń pín ìpínlẹ̀ ìkéde kan, nítorí náà wíwá ẹlẹgbẹ́ jẹ́ ohun tí a retí, kì í ṣe àṣìṣe ìtọ́nisọ́nà.
Yíyí kì í ṣe àkọsílẹ̀ àwọlé
Èyí ni apá tí ń gba ìrọ̀lẹ́ kan. Ìtẹ̀síwájú láàárín àwọn ẹlẹgbẹ́ jẹ́ ètò kan ṣoṣo tí ó tan tàbí tí ó pa, àti nígbà tí ó bá wà ní títan dímọ́nì ni ibi ìtẹ̀síwájú kan ṣoṣo. Ògiri iná ẹ̀rọ gbàlejò kò lè sọ ẹni tí ó lè dé ọ̀dọ̀ ẹni, àti pé àwọn fáìlì fún kíláìntì kọ̀ọ̀kan kò sọ yíyí di àtẹ̀gùn ìlànà.
Bí o bá nílò àwọn òfin fún ẹlẹgbẹ́ kọ̀ọ̀kan, yíyàn wà láàárín fífi ọ̀nà kúkúrú sílẹ̀ àti fífi ògiri iná ẹ̀rọ gbàlejò sílẹ̀ gẹ́gẹ́ bí ìṣàkóso. Pípa á yóò mú ìtẹ̀síwájú kẹ́nẹ́lì padà, èyí tí ó nílò títan ìtẹ̀síwájú IP lórí ṣẹ́bà àti àwọn òfin tí ó ṣe kedere fún àwọn ìṣàn tí o fẹ́. Fífi í sílẹ̀ ní títan túmọ̀ sí pé ìlànà ń gbé nínú ìṣètò dímọ́nì, èyí tí ní ìṣe jẹ́ gbogbo àwọn ẹlẹgbẹ́ tàbí kò sí ẹlẹgbẹ́ kankan.
Àwọn ìlànà ṣẹ́bà ọ̀tọ̀ọ̀tọ̀ pẹ̀lú àwọn kàdà àdírẹ́sì àti ibùdó tiwọn ni ọ̀nà àárín tí ó ṣe é ṣe. Ìlànà kọ̀ọ̀kan ń gbé ìpinnu àwọlé kan ṣoṣo, nítorí náà àwọn ẹgbẹ́ méjì lè ní àwọn òfin ọ̀tọ̀ọ̀tọ̀ láìsí àtẹ̀gùn ìlànà. Ẹ̀rọ gbàlejò lè tọ́nisọ́nà láàárín àwọn kàdà nígbà tí ìyẹn bá jẹ́ èrò, nígbà náà ògiri iná yóò rí àwọn ìṣàn yẹn nítorí pé wọ́n ń kọjá ẹ̀rọ gbàlejò. Iye owó ni àwọn ibùdó àfikún, àwọn ẹ̀rí àfikún àti profáìlì fún ẹgbẹ́ kọ̀ọ̀kan.
Yíyan ibi ìtẹ̀síwájú
Yan ìtẹ̀síwájú kẹ́nẹ́lì nígbà tí ògiri iná bá jẹ́ ẹ̀rọ ìlànà, nígbà tí o bá nílò àkọsílẹ̀ fún ìṣàn kọ̀ọ̀kan, tàbí nígbà tí ìṣirò bá ṣe pàtàkì. Iye owó ni ìwọlé nípasẹ̀ ìkópọ̀ ẹ̀rọ gbàlejò àti àwọn òfin púpọ̀ síi láti tọ́jú. Àǹfààní ni pé gbogbo ohun èlò tí ó wà, láti àwọn kíkà dé àwọn olùjáde ìṣàn, tún ń ṣàpèjúwe ìrìnàjò náà. Lórí ṣẹ́bà kékeré iye owó yẹn kò hàn; lórí atọ́nà tí ó dí pọ̀ kò rí bẹ́ẹ̀.
Yan ìtẹ̀síwájú nínú ìlànà nígbà tí ìrìnàjò láàárín àwọn ẹlẹgbẹ́ bá jẹ́ èyí tí a gbà láyè pátápátá tàbí tí a dènà pátápátá àti pé a ti díwọ̀n ṣẹ́bà fún ìyẹn. Iye owó ni pé àwọn kíkà, ìlànà ìlà ìdúró àti àtọ̀jọ̀ ìsopọ̀ kò tún ṣàpèjúwe àwọn ìṣàn inú mọ́; ìyẹn ṣe ìtẹ́wọ́gbà nìkan bí kò bá sí ẹnikẹ́ni tí yóò gbára lé wọn lẹ́yìn náà.
Ohunkóhun tí o bá yàn, kọ ọ́ sẹ́gbẹ̀ẹ́ àwọn òfin ògiri iná. Àkójọ òfin tí ó dà bíi pé ó ń gbà ìrìnàjò láàárín àwọn ẹlẹgbẹ́ láyè nígbà tí dímọ́nì ń pinnu lọ́nàkọnà ń ṣi ẹni tí ó tẹ̀lé lọ́nà. Ẹnikẹ́ni tí ó kàn ń ka àwọn òfin yóò rò pé kẹ́nẹ́lì ni ẹnubodè.
Ohun tí a gbọdọ̀ yẹ̀wò kí a tó yí àwọn òfin padà
Ka ìṣètò tí ṣẹ́bà gbé wọlé ní tòótọ́, kì í ṣe fáìlì tí o rántí pé o ṣàtúnṣe, kí o sì jẹ́rìí bóyá àṣàyàn ẹlẹgbẹ́ wà. Bí o bá yí i padà, rí i dájú pé iṣẹ́ náà tún gbé wọlé kì í ṣe pé ó kàn tún fáìlì kọ sórí díísì.
Lẹ́yìn náà tún ìdánwò náà ṣe pẹ̀lú ìṣàn láti kíláìntì sí ṣẹ́bà láti fi hàn pé òfin náà bá mu rárá, kí o sì yẹ̀wò àwọn ọ̀nà tí a ti gbé jáde, nítorí pé ọ̀nà tí ó ṣáko lọ dà bíi dídènà ògiri iná gan-an láti ẹ̀gbẹ́ kíláìntì. Yí ìtòlẹ́sẹẹsẹ àwọn òfin padà lẹ́yìn tí o bá mọ ibi ìtẹ̀síwájú tí ó ní ìpinnu náà.