Laba nashqadood ayaa isku cayn ballan qaadaya: marka tunnel-ku dhaco, waxba si cad bannaanka uma baxo. Mid wuxuu skript ku shaqeeyaa hoos-u-dhigga oo jara interface-yada. Kan kalena wuxuu qaanuunka dab-damiska ku reebaa xoogga oo waxba kama doonayo macmiilka VPN. Waxay ku kala duwan yihiin cidda leh fasaxa ficil, waxa dhaca inta lagu jiro farqiga iyo sida mashiinku dib ugu noqdo onlaynka. In labadooda lagu barbardhigo saddexdaas qodob ayaa ka faa'iido badan in laga doodo kee ka adag.

Isla shaqo, laba hab

Macmiilku wuxuu kiciyaa jillaabado marka tunnel-ku soo baxo iyo marka la hoos dhigayo, haddii profile-ku ogolaado fulinta skript. Jillaabkaas wuxuu ku dhex shaqeeyaa wareegga nolosha macmiilka, isla waqtiga xiriirku xirmayo. Qaanuunka dab-damiska, dhanka kale, waxaa leh nidaamka oo dan kama hayo haddii macmiilku shaqaynayo, burburay ama la dilay.

PropertyTeardown scriptFirewall unit
Runs when the client is killedNoYes
Needs privilege at teardown timeUsually yesConfigured once, at boot
Acts on the whole machineOften, including recovery pathsOnly on the flows it matches

Shaxdaas waa doodda oo dhan. Skript ku shaqeeya oo kaliya xiritaan nadiif ah waxay daboolaa kiiska aad ugu welwelin yaraa; kiiska muhiimka ah waa burburka ama shabakadda lumaysa, mana jiro mid soo saara hoos-u-dhig nadiif ah.

Waxa jillaabka hoos-u-dhiggu qaban karo iyo waxa uusan qaban karin

Qaabka la diiwaan geliyay wuxuu maraa interface-yada shabakadda oo hoos dhigaa wax kasta marka laga reebo loopback. Marka qalabka jireed hoos yimaado, waxba kama baxsan karaan tunnel-ka, waana taas ujeeddada.

#!/bin/sh
for dev in /sys/class/net/*; do
  name=$(basename "$dev")
  [ "$name" = lo ] || ip link set dev "$name" down
done

Waxay kaloo hoos dhigtaa shabakadda maxalliga ah, adeeg kasta oo mishiinku martigeliyo, iyo waddada aad isticmaali lahayd si aad u hagaajiso dhibaatada. Laptop-ka qalabka wireless-ka mararka qaarkood wuxuu u baahan yahay beddel gacanta lagu sameeyo ka dib, sidaas darteed hakad gaaban wuxuu noqdaa fadhi dayactir. Xitaa ka sii xun, laga yaabee inaan jillaabka loo ogolayn inuu wax ka qabto arrimahaas: marka macmiilku ka tago fasaxyada, skriptka hoos-u-dhiggu wuxuu ku shaqeeyaa akoon aan fasax lahayn, isla beddel kasta oo interface-ka ahna wuu guuldarraystaa khalad fasax oo la qoro isla waqtiga aan cidna akhrin log-ga.

Hubi sida macmiilku u bilaabmo ka hor inta aadan jillaabka aammin. Skript ku shaqeeya marka gacanta lagu shaqeeyo root ahaan waxba kama caddaynayo adeegga bilaabma bilowga.

Waxa qaanuunka dab-damisku si ka duwan u qabto

Qaanuunka ogolaada kaliya taraafikada tunnel-ka wuu sii shaqeeyaa marka habka macmiilku lumo, maxaa yeelay kernel-ku kama tiirsana habkaas. Qaanuunka ayaa sidoo kale ka cidhiidhi badan: wuxuu xannibaa isla qulqulka uu la mid yahay oo wuxuu uga tagaa loopback, subnetwork-ga maxalliga ah iyo waddada soo kabashada, sidaas darteed mishiinka kuma dhibto.

Qiimaha ayaa ah in qaanuunka ay tahay inuu qoro oo ilaaliyo qofka leh dab-damiska host-ka, waana inuu magacaabo qalabka tunnel-ka ee macmiilku dhab ahaan abuurayo. Taas macneheedu waa qaanuunka iyo profile-ka waa in si wadajir ah loo ilaaliyo; interface magac beddelay ayaa ka tagaya dab-damis xannibaya wax kasta oo aan waxna sharaxayn.

Midkoodna kan kalena lama dhigo mid aan loo baahnayn. Qaanuun dab-damis oo aan marnaba dib loo raraynin ka dib wax ka beddel waa mid mala-awaal ah sida skript aan marnaba shaqayn.

persist-tun ayaa go'aaminaya haddii farqi jiro

Marka qalabka tunnel-ku ka badbaado go'itaan, waddooyinka u jeeda sidoo kale way badbaadaan. Taraafikada markaas waa la tuuraa halkii la weecin lahaa, sidaas darteed waddada caadiga ah kuma noqoto gateway-ga jireed. Habkani waa kan daadashada uga dhigaya mid aan laga yaabo xitaa ka hor inta aan qaanuun dab-damis ku lug yeelan.

La'aanteed dejintaas qalabka waa la saaraa waddooyinkana la socda, waddada caadigana waxay dib u tilmaami kartaa gateway-ga jireed. Inuu sidaas yeelo waxay ku xiran tahay platform-ka iyo macmiilka, sababtaas awgeedna xaaladda waa in la fiirsadaa halkii la qiyaasi lahaa. U qaado dejinta qayb ka mid ah kill switch, ma aha xulasho waxqabad.

Waddada dib-u-xirashada ku hay mid nool, ka dibna tijaabi afar xaaladood

Xannibaad adag waxay sidoo kale ka hor istaagi kartaa macmiilka inuu dib u xirmo, maxaa yeelay macmiilku wali wuxuu u baahan yahay waddo u tagta server-ka iyada oo loo marayo gateway-ga jireed inta wax kasta oo kale la diiday. Rakib waddo host-ka ah ciwaankaas kaliya ka hor inta uusan tunnel-ku soo bixin, oo marka hore xalli magaca, maxaa yeelay DNS waxaa laga yaabaa inuu xanniban yahay marka aad u baahato.

ip route add 198.51.100.20/32 via 192.168.0.1 dev wlan0

Ka dibna hubi xaaladaha ee ma aha sumadda. Si ula kac ah u mar afar daqiiqadood: bilow qabow oo aan tunnel lahayn, fadhi caafimaad qaba, go'itaan aan cidna codsan, iyo fadhiga soo kabashada ka dib. Daqiiqad kasta akhri waddada caadiga ah oo samee hal codsi oo ciwaanka bixiddiisu muuqdo. Barnaamijka ka quustaa marka tunnel-ku hoos yimaado waxba kama sheegayo macmiilka iimaylka ama cusboonaysiinta, sidaas darteed ku celi hubinta ugu dambaysa hal barnaamij oo asal ah. Qor qaanuunka, magacyada interface-yada iyo tillaabooyinka soo kabashada, maxaa yeelay kill switch aan cidna hubin karin waa xan dib u sheegis.

Maqaallo la xiriira