Pákẹ́tì kan ń jáde kúrò nínú kọ̀m̀pútà gbéẹ̀rẹ̀, kò dé ẹnubodè VPN rárá, kò sì sí ìkàsí firewall tí ó ń gbé. Tábìlì ọ̀nà ti pinnu kádàrá pákẹ́tì náà tẹ́lẹ̀: àkọsílẹ̀ blackhole kan bá a mu, kernel sì sọ ọ́ nù kí ẹ̀yà ìsopọ̀ kankan tó rí i. Ìhùwàsí yẹn wúlò nígbà tí ibi tí a ń lọ yẹ kí ó kùnà ní ìtìpá, ṣùgbọ́n ìgbésẹ̀ ìtọ́jú ọ̀nà ni pẹ̀lú ààyè tó há. Kíka rẹ̀ sí kill switch kíkún ni ibi tí àwọn àpẹẹrẹ ti ń ṣe àṣìṣe.

Kí ni ìgbésẹ̀ sísọ nù ń bá mu gan-an

Ìwádìí ọ̀nà ń yan tábìlì kan, lẹ́yìn náà àfikún tí ó bá mu tó gùn jù nínú rẹ̀. Ọ̀nà blackhole jẹ́ àkọsílẹ̀ déédéé tí ìgbésẹ̀ rẹ̀ jẹ́ sísọ nù, nítorí náà ó ń kan àwọn pákẹ́tì tí yóò ti yan àkọsílẹ̀ yẹn lẹ́yìn gbogbo ìpinnu. Yí tábìlì náà padà pẹ̀lú òfin ètò ìṣèlú, tàbí fi àfikún pàtó kan kún un, sísọ nù kò ní ṣiṣẹ́ mọ́.

Ìdí niyì tí ààyè blackhole fi péye tí ó sì rọrùn láti sọ: ó ń bo àfikún náà, nínú tábìlì, fún ẹbí àdírẹ́sì yẹn. Kò bo ibi tí tábìlì mìíràn yóò ṣẹ́gun, kò sì bo IPv6 kìkì nítorí pé a sọ àfikún IPv4 nù.

ip route get ń fi ìpinnu hàn kí o tó gbé ohunkóhun kalẹ̀, pẹ̀lú tábìlì àti irú ọ̀nà. Kíkà àbájáde yẹn yá ju kíkọ́ láti inú ìbéèrè tí ó kùnà irú òfin tàbí àfikún tí ó ṣiṣẹ́.

Blackhole kò dà bí unreachable tàbí prohibit

Linux ń pèsè irú ọ̀nà mẹ́ta tí ó dà bí sísọ nù, wọ́n sì yàtọ̀ nínú ohun tí ẹni tí ó fi ránṣẹ́ ń rí. Blackhole ń sọ pákẹ́tì nù láìsí ìdáhùn, nítorí náà alábàáṣepọ̀ ń rí àkókò tí ó tán. Ọ̀nà unreachable ń dá ìròyìn ICMP unreachable padà, nítorí náà ìsopọ̀ ń kùnà kíákíá pẹ̀lú àṣìṣe agbàlejò tàbí nẹ́tíwọ́kì. Ọ̀nà prohibit ń dá àṣìṣe ìdínà ìṣàkóso padà, èyí tí ó súnmọ́ kíkọ̀ ètò ìṣèlú pẹ̀lú ìmọ̀.

Yan ìhùwàsí tí o fẹ́ kí ètò náà rí. Sísọ nù ní ìdákẹ́jẹ́ yẹ nígbà tí o kò fẹ́ fi ètò ìṣèlú hàn, àṣìṣe lẹ́sẹ̀kẹsẹ̀ sì sàn nígbà tí àwọn olùlò ní láti lóye ìdí tí ibi kan kò fi wà. Dídapọ̀ àwọn irú pọ̀ káàkiri nẹ́tíwọ́kì ń mú àwọn tíkẹ́ẹ̀tì ìtìlẹ́yìn jáde tí wọ́n ń ṣàpèjúwe ètò ìṣèlú kan náà gẹ́gẹ́ bí ìkùnà mẹ́ta ọ̀tọ̀ọ̀tọ̀.

Má ṣe rò pé gbogbo àkọsílẹ̀ sísọ nù ni a lè pààrọ̀ nígbà tí o ń ṣàyẹ̀wò ìsopọ̀. Ọ̀rọ̀ àṣìṣe, àkókò àti gbígba pákẹ́tì yàtọ̀, irú ọ̀nà tí ó wà nínú tábìlì sì ń sọ fún ọ èyí tí o ń wò. ìwé ìtọ́nisọ́nà ip-route ń ṣe àkójọ àwọn irú àti ìhùwàsí àṣìṣe wọn.

Báwo ni ó ṣe fi wéra pẹ̀lú kill switch

Kill switch jẹ́ àyọ̀sẹ́ pákẹ́tì: òfin firewall tí ó ń sọ ìsọ̀wọ́nwọ́n jáde tí yóò jáde sí ẹ̀yìn tunnel nù. Ọ̀nà blackhole jẹ́ ìpinnu gbígbé jáde tí a ṣe ṣáájú nínú àkópọ̀. Àwọn méjèèjì lè dá ìsọ̀wọ́nwọ́n dúró, ṣùgbọ́n wọ́n ń rí ohun tí ó yàtọ̀, wọ́n sì ń pàdánù àwọn ọ̀ràn tí ó yàtọ̀.

MechanismWhat it blocksWhat it missesHow failure looks
Blackhole routeDestinations matching the prefix and tableOther tables, other address families, traffic with a different routeSilent timeout
Firewall kill switchEgress not bound to the tunnel interfaceRules that are too broad can break the endpoint or DHCPDropped packets with counters
WireGuard AllowedIPsDestinations not routed into the interfaceTraffic that never enters the interface at allNo tunnel route, direct egress

Ààyè ni ibi tí ìfiwéra ti ṣe pàtàkì. Firewall lè bá olówó, ibùdókọ̀ tàbí ẹ̀yà ìsopọ̀ mu, ó sì lè dí ètò lọ́wọ́ nígbà tí ibi ìparí ṣì wà ní àárín ọwọ́; ọ̀nà kò lè ṣe bẹ́ẹ̀. Ní ìdàkejì, ọ̀nà lè fi gbogbo àfikún ránṣẹ́ sí sísọ nù láìsí àyọ̀sẹ́ pákẹ́tì kankan tí a gbé kalẹ̀, èyí tí ó wúlò lórí ètò tí ó kéré.

AllowedIPs ti WireGuard jẹ́ ìtọ́jú ọ̀nà pẹ̀lú kọ́kọ́rọ́ ìkọ̀kọ̀, kì í ṣe firewall. Ó ń pinnu àwọn àfikún ibi tí a gbà sínú ẹ̀yà ìsopọ̀, àpẹẹrẹ tí ó ṣe àkójọ ẹ̀yà nẹ́tíwọ́kì kékeré ti tunnel nìkan ń fi àwọn ibi mìíràn sílẹ̀ fún ọ̀nà àkọ́kọ́ déédéé. Ìdí niyì tí àwọn àpẹẹrẹ tunnel kíkún fi ń lò 0.0.0.0/0 àti ìdí tí wg-quick fi ń fi àwọn òfin firewall sórí pẹ̀lú nígbà tí ó bá lè.

Jẹ́ kí ibi ìparí tunnel wà ní ẹ̀yìn sísọ nù

Àdírẹ́sì ìta ti ibi ìparí gbọ́dọ̀ wà ní àárín ọwọ́ nípasẹ̀ ẹ̀yà ìsopọ̀ ti ara. Sísọ nù tí ó tún mú àdírẹ́sì yẹn ń dí ìfọwọ́sowọ́pọ̀ lọ́wọ́ láti jáde, tunnel kò sì gbé sókè rárá, èyí tí ó dà bí ìkùnà VPN dípò ètò ìṣèlú ọ̀nà. Ṣàyẹ̀wò ọ̀nà sí ibi ìparí ṣáájú àti lẹ́yìn àyípadà.

Àǹfààní ìṣàkóso wà nínú àyẹ̀wò kan náà. Bí ọ̀nà kan ṣoṣo sí router tàbí alábàáṣepọ̀ bá jẹ́ tunnel, sísọ nù tí ó gbòòrò jù lè ti ọ̀wọ́ rẹ kúrò nínú ẹ̀rọ tí yóò jẹ́ kí o yọ ọ́ kúrò. Tọ́jú ọ̀nà ìta-ẹ̀gbẹ́ tí a kọ sílẹ̀, console, tàbí ìpadàbọ̀ àkókò.

IPv6 nílò àkọsílẹ̀ tirẹ̀ àti àyẹ̀wò tirẹ̀. Àpẹẹrẹ tí ó ń sọ IPv4 nù sínú blackhole tí ó sì ń fi IPv6 sílẹ̀ lórí ọ̀nà àkọ́kọ́ ń da ìsọ̀wọ́nwọ́n tí ètò ìṣèlú fẹ́ dá dúró gan-an, àṣìṣe náà kò sì hàn nínú ìdánwò IPv4 nìkan.

Gbé e kalẹ̀ ní ìpele pẹ̀lú aago àti ìpadàbọ̀

Lo ọ̀nà náà pẹ̀lú yíyọ kúrò aládàáṣiṣẹ́ kúkúrú kí àṣìṣe má bàa wà lẹ́yìn àtúnbí. Àwọn àṣẹ tí ó wà nísàlẹ̀ ń lo ìwọ̀n àkọsílẹ̀; fi àfikún tí àpẹẹrẹ rẹ gan-an ń sọ nù rọ́pò rẹ̀:

sudo ip route replace blackhole 10.0.0.0/8
ip route get 10.1.2.3
sudo systemd-run --on-active=60 /sbin/ip route del blackhole 10.0.0.0/8

Àṣẹ kejì yẹ kí ó jábọ̀ ọ̀nà blackhole àti tábìlì tí ó ti wá. Ẹ̀kẹta ń ṣètò yíyọ kúrò ní ìṣẹ́jú kan, èyí tí ó tó àkókò láti jẹ́rìí ètò ìṣèlú, ó sì kúrú tó láti gbà padà lẹ́yìn àṣìṣe lórí agbàlejò tí ó jìnnà. Nígbà tí a bá ti jẹ́rìí ìhùwàsí náà, sọ àkọsílẹ̀ náà di àìlópin nípasẹ̀ ìṣàkóso ìṣètò kan náà tí ó ní àwọn ọ̀nà mìíràn.

Pa àyípadà náà mọ́ nípasẹ̀ kíkọ àfikún, tábìlì, ẹbí àdírẹ́sì àti ọ̀nà ìpadàbọ̀ sílẹ̀. Sísọ nù jẹ́ ìyàtọ̀ tí a mọ̀ọ́mọ̀ ṣe nínú àpẹẹrẹ ìtọ́jú ọ̀nà, ẹlẹ́rọ́ tí ó tẹ̀le yóò sì ní láti mọ ìsọ̀wọ́nwọ́n tí ó yẹ kí ó dá dúró kí ó tó pinnu bóyá ó ṣì yẹ níbẹ̀.

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