د ښکته کولو سکریپټ یا د فایر وال قاعده: کوم یو له تېښتې مخه نیسي؟
د اړیکې پرې کېدو پر مهال انټرفېسونو ته ښکته کول درانه دي او ډېری وخت پرته له امتیازونو چلیږي. دا د فایر وال له هغې قاعدې سره پرتله کړئ چې له لوېدو وروسته هم پاتې کېږي او تشه بندوي.
دوه ډیزاینونه یو شی ژمنه کوي: کله چې ټونل ولویږي، هیڅ شی په خلاص ډول بهر نه وځي. یو یې د ښکته کولو پر مهال سکریپټ چلوي او انټرفېسونه پرې کوي. بل یې د فایر وال قاعده په ځواک کې پرېږدي او له VPN کړنې څخه هیڅ نه غواړي. دوی په دې کې توپیر لري چې چا ته د عمل امتیاز دی، په تشه کې څه پېښېږي او وروسته ماشین څنګه بیا آنلاین کېږي. پر دغو درې ټکو یې پرتله کول له دې بحث څخه ګټور دي چې کوم یو سخت دی.
یو کار، دوه میکانیزمونه
کړنه کولای شي هکونه چل کړي کله چې ټونل پورته شي او کله چې ښکته شي، په دې شرط چې پروفایل د سکریپټ چلولو اجازه ورکړي. هغه هک د کړنې د ژوند دورې دننه، په هغه شیبه چې اړیکه بندېږي، چلیږي. د فایر وال قاعده، پر خلاف، د سیسټم ملکیت دی او پروا نه کوي چې کړنه چلیږي، لوېدلې یا وژل شوې ده.
| Property | Teardown script | Firewall unit |
|---|---|---|
| Runs when the client is killed | No | Yes |
| Needs privilege at teardown time | Usually yes | Configured once, at boot |
| Acts on the whole machine | Often, including recovery paths | Only on the flows it matches |
هغه جدول ټول استدلال دی. هغه سکریپټ چې یوازې په پاک بندېدو کې چلیږي هغه حالت پوښي چې تاسو تر ټولو لږ اندېښنه درلوده؛ مهم حالت د خرابېدو یا د شبکې ورکېدو دی، او هیچاته یې هم پاک ښکته کول نه برابروي.
د ښکته کولو هک څه کولای شي او څه نه شي کولای
مستند نمونه د شبکې انټرفېسونو ته ځي او له loopback پرته هر څه ښکته کوي. کله چې فزیکي وسیله ښکته وي، هیڅ شی د ټونل بهر ته نه شي تېښته کولای، او دا سمه موخه ده.
#!/bin/sh
for dev in /sys/class/net/*; do
name=$(basename "$dev")
[ "$name" = lo ] || ip link set dev "$name" down
done
دا سیمه ییزه شبکه، هر هغه خدمت چې ماشین یې کوربه دی او هغه لاره هم ښکته کوي چې تاسو به د ستونزې د سمولو لپاره کاروله. پر لپ ټاپ بېسیمه وسیله ځینې وخت وروسته لاسي بدلون ته اړتیا لري، نو لنډه خنډ د ترمیم غونډه کېږي. تر دې بدتر، کېدای شي هک ته د دې هر یو کولو اجازه نه وي: کله چې کړنه له امتیازونو تېږي، د ښکته کولو سکریپټ پرته له امتیازه حساب کې چلیږي، او هر انټرفېس بدلون د اجازې په تېروتنه ناکامېږي چې په هماغه شیبه لیکل کېږي چې هیڅوک لاګ نه لولي.
پخوا له دې چې پر هک باور وکړئ، وګورئ کړنه څنګه پیلېږي. هغه سکریپټ چې د root په توګه لاسي چلولو پر مهال کار کوي، د هغه خدمت په اړه هیڅ نه ثابتوي چې د بوټ پر مهال پیلېږي.
د فایر وال قاعده څه توپیر لري
هغه قاعده چې یوازې د ټونل ترافیک اجازه ورکوي، کله چې د کړنې پروسه ورکه شي هم کار کوي، ځکه چې کرنل پر هغې پروسې تړلی نه دی. قاعده نوره هم تنګه ده: هغه بهیرونه بندوي چې ورسره سمون لري او loopback، سیمه ییزه فرعي شبکه او د بیا رغونې لاره یوازې پرېږدي، نو ځکه ماشین په بنبست کې نه پرېږدي.
بيه دا ده چې قاعده باید د کوربه فایر وال مالک ولیکي او وساتي، او باید هغه ټونل وسیله ونوموي چې کړنه ریښتیا جوړوي. دا مانا دا ده چې قاعده او پروفایل باید یوځای وساتل شي؛ نوم بدل شوی انټرفېس هغه فایر وال پرېږدي چې هر څه بندوي او هیڅ نه تشریح کوي.
هیڅ میکانیزم بل ته اړتیا نه لرې کوي. هغه فایر وال قاعده چې له سمون وروسته هیچاته بیا نه لوستل کېږي، هغه سکریپټ ته ورته افسانوي ده چې هیچاته نه چلیږي.
persist-tun فیصله کوي چې تشه شته که نه
کله چې ټونل وسیله له پرې کېدو ژوندۍ پاتې شي، هغه لارې هم پاتې کېږي چې هغې ته ځي. ترافیک بیا د بیا لارښوونې پر ځای غورځول کېږي، نو ځکه اصلي لاره بېرته فزیکي ګېټوې ته نه راځي. همدا چلند تېښته ناشونده کوي، حتی پخوا له دې چې کومه فایر وال قاعده ښکېله شي.
پرته له دې تنظیم، وسیله له لارو سره یوځای لرې کېږي، او اصلي لاره بیا کولای شي فزیکي ګېټوې ته اشاره وکړي. چې داسې به کېږي که نه، پر پلیټ فارم او کړنې پورې اړه لري، او همدا لامل دی چې حالت باید وکتل شي نه فرض. تنظیم د kill switch برخه وګڼئ، نه د فعالیت انتخاب.
د بیا نښلولو لاره ژوندۍ وساتئ، بیا څلور حالتونه وازموئ
سخت بندیز کولای شي کړنه له بیا نښلولو هم منع کړي، ځکه چې کړنې ته لا هم د فزیکي ګېټوې له لارې سرور ته لاره پکار ده، په داسې حال کې چې نور هر څه رد کېږي. پخوا له دې چې ټونل پورته شي، د هماغه یو پتې لپاره کوربه لاره نصب کړئ، او لومړی نوم حل کړئ، ځکه چې DNS ممکن تر هغه وخته چې ورته اړتیا لرئ بند شوی وي.
ip route add 198.51.100.20/32 via 192.168.0.1 dev wlan0
بیا لیبل نه، حالتونه تایید کړئ. څلور شیبې په قصد وګورئ: له ټونل پرته سړه پیل، روغه ناسته، هغه پرې کېدل چې هیچا نه غوښتی، او له بیا رغېدو وروسته ناسته. په هرې شیبې کې اصلي لاره ولولئ او یوه غوښتنه وکړئ چې وتلې پته یې ښکاره وي. هغه اپلیکیشن چې د ټونل د ښکته والي پر مهال تسلیمېږي، د برېښنالیک کړنې یا تازه کوونکي په اړه هیڅ نه وايي، نو ځکه وروستۍ کتنه له یوه شالید اپلیکیشن سره تکرار کړئ. قاعده، د انټرفېسونو نومونه او د بیا رغونې ګامونه ولیکئ، ځکه چې هغه kill switch چې هیڅوک یې نه شي تاییدولای یوازې اوازه ده.