په Tinyproxy کې Listen, Bind او BindSame: کومه پته ګټي
Listen هغه پته غوره کوي چې مراجعین مني، Bind د وتونکو اړیکو سرچینه غوره کوي. دواړه لاره نه ټاکي، نو لاره جلا وګورئ.
پراکسي ځواب ورکوي، غوښتنه بشپړېږي، او بیا هم منزل لا هم د محلي شبکې پته ثبتوي۔ په پراکسي لاګ کې هیڅ شی غلط نه ښکاري، او هغه کرښه چې تاسو بدله کړه همدا هغه کرښه ده چې اسنادو د بدلولو وړاندیز کړی و۔ په هغه کوربه چې د محلي شبکې پته او د تونل پته دواړه لري، درې لارښوونې پرېکړه کوي چې کومه پته چېرې ښکاري، او یوازې یوه یې د وتلو اړخ پورې اړه لري۔ که یې په غلط ترتیب ولولئ، بې سببه د لارښودنې جدول ته ورسیږئ۔
نښه: منزل د محلي شبکې پته ویني
یو مراجع د محلي شبکې پتې له لارې پراکسي ته نښلول کیږي، او پراکسي منزل ته خپله اړیکه پرانیزي۔ هغه دوهمه اړیکه د کرنل د قواعدو له مخې د سرچینې پته ټاکي، او په ډیفالټ ډول هغه ده چې د لارې پلټنه ټاکي۔ نو ځکه منزل د کوربه بنسټیزه پته ثبتوي، که څه هم هر بایټ له پراکسي تېر شو۔ د لیږد له نظره هیڅ شی مات نه دی، او له همدې امله پراکسي لاګ د دې په اړه ویلو لپاره هیڅ نه لري۔
د دې خرابۍ عکس په آینه کې پیژندل اسانه دي: وتونکې سرچینه د تونل پتې ته پن کړئ او د محلي شبکې مراجعین به هېڅکله اورېدونکي ته ونه رسیږي۔ هغه نسخه ځان اعلانوي، خو لومړنۍ د یوې کارکوونکې غوښتنې تر شا پټیږي۔ دواړه د دې له امله رامنځته کیږي چې یوه لارښوونه داسې وګڼل شي لکه دواړو پوښتنو ته ځواب ویونکې۔
درې لارښوونې، درې بېلې پتې
Listen هغه ځایي پته نوموي چې پراکسي مراجعین مني۔ Bind د هغو اړیکو لپاره چې پراکسي بهر ته جوړوي سرچینه پته برابروي، او BindSame ورته وایي چې نوې منل شوې اړیکې ځایي پته بیا وکاروي۔ دا درې جلا پوښتنې دي، او یوه کرښه یوازې یوې ته ځواب ورکوي۔ د دوی ګډول هغه معمول لامل دی چې بدلون بې اغیزه ښکاري۔
| What you observe | Check first |
|---|---|
| A client cannot connect at all | Listen: the local address the listener binds |
| The request works but the far side logs the LAN address | Bind: the outgoing source is not being applied |
| A configured Bind appears to have no effect | BindSame yes: the accepted local address overrides the Bind list |
| The lookup names the LAN interface | The route, not the proxy: the source cannot reach that destination |
هغه تشریح شوې ترتیب ولولئ چې د نصب شوې نسخې سره راځي، ځکه ډیفالټ ارزښتونه او منل شوی نحوې د بڼو ترمنځ بدلېږي۔ د پروژې بېلګه ترتیب هر لارښوونه د نورو تر څنګ مستند کوي۔ هغه فایل له ډیسک پرته فایل سره پرتله کړئ، نه له بل توزیع لپاره لیکل شوي لارښود سره۔
اورېدونکی او وتونکې سرچینه جلا تنظیم کړئ
هغه کوربه واخلئ چې د محلي شبکې پته یې 192.168.50.10 او د تونل پته یې 10.90.0.3 ده۔ که د محلي شبکې مراجعین باید پراکسي ته ورسیږي او غوښتنې یې له تونل څخه ووځي، دا دوه خپلواکې پرېکړې دي او دواړه باید ولیکل شي۔ لاندې ټوټه همدا څرګندوي او نه نور څه۔
Listen 192.168.50.10
Bind 10.90.0.3
BindSame noدا بشپړ ترتیب نه دی، نو تصویب شوی پورټ، تصدیق، د مراجعینو د لاسرسي کنټرول او د منزل محدودیتونه وساتئ۔ دواړه پتې باید د Tinyproxy د شبکې نوم فضا دننه همدې کوربه پورې اړه ولري، ځکه هغه Bind ارزښت چې پروسه یې مالک کېدای نشي د پیل پر مهال نه، بلکې د نښلېدو پر مهال ناکامېږي۔ BindSame yes بله تګلاره بیانوي، چېرې چې د منل شوې اړیکې ځایي پته وتونکې سرچینه کیږي۔ په اوسنیو بڼو کې هغه څانګه پر Bind لیست لومړیتوب لري، او همداسې ترتیب شوې سرچینه پرته له کومې تېروتنې ورکېږي۔
هغه لاره وګورئ چې سرچینه یې په ګوته کوي
د سرچینې پتې ټاکل لاره نه جوړوي، نو له کرنل څخه وپوښتئ چې له هغې سرچینې او هغه منزل سره به څه وکړي۔ هغه پلټنه چې د تونل انټرفیس نوموي لږترلږه شواهد ده، او هغه چې د محلي شبکې انټرفیس نوموي مانا دا ده چې سرچینه لیکل شوې بڼه کې کار نشي کولای۔ پلټنه د بافت له مخې ده: هغه د دې نوم فضا لپاره نافذ تګلارې قواعد او جدول ارزوي۔ دا اړیکه نه ده، او د دې په اړه هیڅ نه وایي چې لاندې NAT به خدمت ته څه وړاندې کړي۔
ip -4 route get 203.0.113.25 from 10.90.0.3په بېلګه کې د اسنادو پته وکاروئ او هغه خدمت چې ازموینې ته اجازه لرئ ځای پرځای کړئ۔ کله چې پراکسي په کنټینر کې وي پلټنه د پراکسي د نوم فضا دننه چلوئ، ځکه د کوربه قواعد هغه قواعد نه دي چې پروسه یې ویني۔ که غوښتل شوې تونل لاره نشته، پراکسي کوربه کې د منزل ځانګړي قواعد اضافه کولو پرځای دې د شبکې مالک یې سم کړي۔ د پلټنې د بریا لپاره د کوربه لارې مه پاکوئ او د سرور لخوا رالیږل شوې لارې مه غیرفعالوئ، حتی که زوړ لارښود همداسې کړی وي، ځکه داسې بدلونونه د یوې پراکسي لارې د سمولو لپاره د کوربه ټول تصویب شوي VPN چلند ځای په ځای کوي۔
په منزل کې سرچینه تایید کړئ
سرچینه هغه ځای ولولئ چې غوښتنه ورته رسیږي، نه هغه ځای چې له هغه وځي۔ د منزل د اپلیکیشن لاګ، یا د هغه مخې ته پروت څنډې وسیله، هغه پته ثبتوي چې واقعاً یې لیدلې، خو پراکسي یوازې خپل نیت ښودلای شي۔ له بدلون وروسته د غوښتل شوي اورېدونکي له لارې یوه نوې غوښتنه وکړئ، ځکه په کیش کې اړیکه د نوي تړون په اړه هیڅ نه ثابتوي۔ بیا هغه ثبت شوې پته له هغې سره پرتله کړئ چې تاسو ټاکلې ده۔
ss -ltnp | grep tinyproxy
curl -x http://192.168.50.10:8888 https://example.com -o /dev/null -sScurl یوازې د ترافیک جوړونکی دی؛ د کتلو وړ پته هغه ده چې لرې اړخ ثبت کړې، نه هغه سیال چې curl ناڅاپه ورسره ونښت۔ که دواړه سره ونه ګډي، پرېکړه وکړئ چې توپیر د سرچینې له ټاکل کېدو څخه راځي که له لارې وروستي بدلون څخه، ځکه هغوی په بېلو ځایونو کې سمېږي۔ د پتو بدلونونه او د پراکسي بیا پیلول یوځای پلان کړئ، ځکه هغه پته تړل چې تونل نوره نه لري له بیا نښلېدو وروسته په خاموشۍ ناکامېږي۔ د DNS او IPv6 چلند هم جلا تعریف کړئ، ځکه پورتنۍ IPv4 ټوټه د دواړو له یوه په اړه هم هیڅ نه ثابتوي۔