Fífi òfin ìdíwọ̀ kún àti rí i pé ìgbàsílẹ̀ tí ó ṣí ṣì ń bá a lọ kì í ṣe àṣìṣe UFW. Òfin tí o fi kún dúró lẹ́yìn àwọn òfin tí ó ti gba ṣíṣan náà tẹ́lẹ̀, àti àsopọ́ tí a fìdí múlẹ̀ ṣáájú ń bá a lọ láti bá wọn mu. Fífi èyí ṣe túmọ̀ sí fífi sí i ní ipò tí ó tọ́ àti ní òye ohun tí àwọn òfin ìṣáájú ṣe ìlérí. Ẹ̀yà tí ó dín ti ìyípadà yẹn ni ó tẹ̀le.

Ìlànà ni ó pinnu, kì í ṣe wíwà òfin náà

UFW jẹ́ ojú iwájú tí ó kọ àwọn òfin netfilter ní àwọn ìpele: apákan ìlànà tí ń ṣiṣẹ́ ṣáájú àwọn òfin olùmúlò, lẹ́yìn náà àwọn òfin olùmúlò fúnra wọn, lẹ́yìn náà apákan tí ń ṣiṣẹ́ lẹ́yìn wọn. Àwọn òfin ìṣáájú bọ́sẹ̀wà gba ìjábọ̀ ti àwọn àsopọ́ tí a fìdí múlẹ̀ àti tí ó ní ìbáṣepọ̀, àti pé a ṣe àyẹ̀wò àwọn òfin yẹn ṣáájú ohunkóhun tí o fi kún pẹ̀lú allow tàbí deny lasan. Ìtọ́kasí àwọn àṣẹ UFW ṣe àkọsílẹ̀ ọ̀nà fífi sí i àti wíwò ipò tí ó ní nọ́mbà tí ìyípadà yìí gbarale.

Ìlànà yẹn ṣàlàyé ìyàlẹ́nu náà. Òfin tuntun rẹ jẹ́ gidi àti pé ó wà nínú tábìlì tí ó tọ́, ṣùgbọ́n kì í ṣe ìpinnu àkọ́kọ́ tí pákẹ́tì náà pàdé. Àsopọ́ tí a ti tọpinpin tẹ́lẹ̀ gẹ́gẹ́bí ẹni tí a fìdí múlẹ̀ kò dé ibẹ̀ rárá.

Lo àwọn òfin route fún iṣẹ́ yìí, nítorí a fi pákẹ́tì náà ránṣẹ́ nípasẹ̀ ẹnu-ọ̀nà dípò kí a tọ́ka sí àwọn iṣẹ́ ti ẹnu-ọ̀nà fúnraarẹ̀. Òfin ìgbẹ̀wọ̀ yóò ṣe àtúnṣe ìjábọ̀ tí kò tọ́ àti kí ó dàbí ẹni pé kò ṣe ohunkóhun.

Fi sí i lókè àṣẹ gbígba tí ó gbòòrò

Wo fífi sí i ṣáájú kí o tó lò ó, kí o sì jẹ́rìí pé òfin náà kò tíì wà níbòmíràn nínú àtòkọ náà. Dídáàkọ́ ìlànà kan náà jẹ́ kí yíyọ kúrò nígbàmìíràn di àìdánilójú, àti ẹni tí ó yọ ẹ̀dà tí kò tọ́ kúrò kì yóò ṣe àkíyèsí rẹ̀ fún àwọn ọ̀sẹ̀.

sudo ufw --dry-run route insert 1 deny in on tun0 proto tcp from 10.88.0.55/32 to 192.0.2.88/32

Tí wíwò ṣáájú bá fi òfin kan gangan hàn ní ipò tí o retí, lo àṣẹ kan náà láìsí àmì dry-run. Ipò 1 gbé e sí orí àwọn àṣẹ olùmúlò tí ó gbòòrò, kì í ṣe sí orí àwọn òfin ìlànà tí a jíròrò tẹ́lẹ̀. Jẹ́rìí pé orúkọ interface bá mu pẹ̀lú ẹ̀rọ tunnel lórí ẹnu-ọ̀nà yìí, nítorí òfin tí ó so mọ́ interface tí kò sí mọ́ yóò jókòó nínú àtòkọ tí ó dàbí ẹni pé ó tọ́ nígbà tí kò bá mu ohunkóhun. Yí orúkọ ìtọ́kasí ẹ̀rọ padà ṣáájú kí o tó lò ó, kì í ṣe lẹ́yìn tí ìdánwò bá kùnà.

Kò sí ibùdó òpin nínú òfin yẹn, nítorí náà ó kọ gbogbo ibùdó TCP lórí àdírẹ́sì yẹn, kì í ṣe HTTPS nìkan. Tí èrò bá jẹ́ iṣẹ́ kan, sọ orúkọ ibùdó náà; òfin tí ó gbòòrò ju ìlànà lọ jẹ́ ìṣẹ̀lẹ̀ ọjọ́ iwájú tí ń dúró de olùkà ákọ́kọ́ rẹ̀.

Fi ààlà sí orísun sí àdírẹ́sì kan nìkan tí àdírẹ́sì yẹn bá so mọ́ ìdánimọ̀ tí a pinnu. Adágún VPN pẹ̀lú ìpínpín tí ń yípadà lè fún àdírẹ́sì kan náà fún alábàárà mìíràn ní ọ̀la, àti pé ìdíwọ̀ yóò tẹ̀le àdírẹ́sì náà dípò ènìyàn náà.

Àwọn ṣíṣan tí a fìdí múlẹ̀ yè òfin tuntun náà

Títọpinpin àsopọ́ ni ìdí tí ìgbà tí ó wà tẹ̀síwájú. Ní kété tí a bá kọ ṣíṣan kan gẹ́gẹ́bí ẹni tí a fìdí múlẹ̀, àwọn òfin ìṣáájú gba àwọn pákẹ́tì rẹ̀ ṣáájú kí a tó wo ìdíwọ̀ rẹ, àti pé gbígbé náà parí bí ẹni pé kò sí ohun tí ó yípadà. Nítorí náà ìdánwò pẹ̀lú ẹ̀rọ aṣàwákiri tí ó tún lo àsopọ́ tí ó ṣí kò sọ ohunkóhun fún ọ nípa ìlànà tuntun. Ìdíwọ̀ lè dàbí ẹni pé kò wúlò ní ìṣẹ́jú díẹ̀ lẹ́yìn ìmúṣiṣẹ́ àti pé ó lè mú èso pátápátá fún olùmúlò tí ó tẹ̀le tí ó sopọ̀.

Tí ìbéèrè bá pẹ̀lú gígé ìjábọ̀ alààyè, ìyípadà òfin olùmúlò yìí kò lè pèsè rẹ̀. Yíyọ ipò tí a tọpinpin padà jẹ́ ìgbésẹ̀ ọ̀tọ̀ pẹ̀lú rédíọ́ìpù ipa tirẹ̀, àti pé ó jẹ́ ti olóhun firewall kì í ṣe ti ẹni tí ó fi òfin kún. Fífi gbogbo àsopọ́ kúrò lórí ẹnu-ọ̀nà kí ìgbà kan lè parẹ́ ni irú àtúnṣe tí ó ṣẹ̀dá ìṣẹ̀lẹ̀ kejì.

Rántí àwọn ààlà pẹ̀lú. Òfin yìí kò sọ ohunkóhun nípa ICMP, UDP tàbí IPv6, nítorí náà ping tí ó ṣàṣeyọrí kì í ṣe ẹ̀rí pé ìdíwọ̀ náà kùnà. Àdírẹ́sì IPv4 kan pẹ̀lú kì í ṣe ojú opo wẹ́ẹ̀bù: orúkọ kan lè yanjú sí àwọn àdírẹ́sì púpọ̀, àti pé ẹni tí o sọ orúkọ rẹ̀ nìkan ni a bo.

Dánwò pẹ̀lú ṣíṣan tuntun

Ka àwọn òfin olùmúlò tí ó ní nọ́mbà àti wíwò àìsè tí ó mú èso, lẹ́yìn náà ṣí àsopọ́ tuntun láti alábàárà tí o yàn:

sudo ufw status numbered
sudo ufw show raw
# from 10.88.0.55, a new TCP connection to 192.0.2.88 should fail

Wíwò àìsè ṣe pàtàkì nítorí status fi àwọn òfin ìlànà tí a kọ pẹ̀lú ọwọ́ sílẹ̀, nítorí náà ìlànà lè dàbí ẹni tí ó yàtọ̀ sí èyí tí kernel fi agbára mú. Fi àwọn méjèèjì wéra ṣáájú kí o tó pinnu pé òfin kan wà ní ààyè tí kò tọ́.

Lẹ́yìn náà ṣàyẹ̀wò àwọn ìṣàkóso méjì tí ó fi hàn pé òfin náà dín kì í ṣe gbòòrò: òpin tí a gbà láàyè láti alábàárà kan náà tún ń ṣiṣẹ́, àti alábàárà kejì tún dé òpin tí a kọ̀ sílẹ̀ tí ìlànà rẹ̀ bá gbà láàyè. Ìdíwọ̀ tí ó fọ́ àwọn ìdánwò méjèèjì jẹ́ ìyípadà ìlànà, kì í ṣe ìgbésẹ̀ tí a fojúsí.

Nígbà tí ìdánwò bá parí, yọ òfin tí o fi kún nìkan kúrò, nípa títúnṣe rẹ̀ gangan. Tí ìlànà bá jẹ́ yẹ, fi lé olóhun firewall pẹ̀lú ìdánimọ̀ alábàárà, olóhun òpin àti ọjọ́ àtúnyẹ̀wò, kí àdírẹ́sì tunnel tí a pín lẹ́ẹ̀kansí má ba fi ìdíwọ̀ ìgbà àtijọ́ sílẹ̀.

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