Client IP တစ်ခုအတွက် Squid 6 ဝင်ရောက်မှုစည်းမျဉ်းများ
Squid 6.13 forward proxy ကို သိထားသည့် client သို့ကန့်သတ်ပြီး ဦးတည်ရာအကာအကွယ်ကို ထိန်းကာ မသုံးမီ စည်းမျဉ်းအစဉ်စစ်ပါ။
ဤ configuration သည် Debian 13 package အပါအဝင် Squid 6.13 အတွက်ဖြစ်သည်။ ထည့်သွင်းထားသည့် version ကို squid -v ဖြင့်အတည်ပြုပါ။ Squid ညွှန်ကြားချက်အညွှန်းက http_access သည် version 8 တွင်မရဟု ဖော်ပြသည်။
လိပ်စာများကို အရင်ရွေးပါ
Listener က server သို့သတ်မှတ်ထားသည့်လိပ်စာ လိုသည်။ Client စည်းမျဉ်းက Squid မြင်ရသော မူလလိပ်စာ လိုသည်။ Laptop ၏ private address အစား NAT ကွန်ရက်၏ public exit address ဖြစ်နိုင်သည်။
အောက်ပါစာတမ်းလိပ်စာများကို အစားထိုးပါ။ Client ကန့်သတ်ချက်သည် /32 ဖြင့်ဖော်ပြသည့် လိပ်စာတစ်ခုဖြစ်သည်။
http_port 192.0.2.10:3128
acl proxy_client src 198.51.100.27/32
acl Safe_ports port 80 443
acl SSL_ports port 443
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access deny manager
http_access deny to_localhost
http_access deny to_linklocal
http_access allow proxy_client
http_access deny all
Package configuration တွင် သက်ဆိုင်သော listener၊ ACL definitions နှင့် access rules ကို အစားထိုးပြီး logging နှင့် filesystem settings ကို ထိန်းပါ။ ဤ rules ကို အစောပိုင်း client allow အောက်တွင် ထည့်လျှင် ကန့်သတ်ချက်ကို ကျော်နိုင်သည်။ List ACL ကို ထပ်သတ်မှတ်ခြင်းကလည်း တန်ဖိုးများထပ်ထည့်နိုင်သည်။
Request များ rules ကို ဖြတ်သန်းပုံ
အစပိုင်း deny များက မလိုသော destination port၊ စီမံရေး request၊ local သို့မဟုတ် link-local ဦးတည်ရာတို့ကို ပယ်သည်။ ထိုစစ်ဆေးမှုများပြီးမှ သိထားသည့် client ကို ခွင့်ပြုသည်။ ကျန် request အားလုံးက နောက်ဆုံး deny သို့ရောက်သည်။ Source allowlist တစ်ခုတည်းက ဦးတည်ရာကို မကန့်သတ်သောကြောင့် ဦးတည်ရာအကာအကွယ် လိုဆဲဖြစ်သည်။
Listener မဖွင့်မီ host သို့မဟုတ် network firewall ကို သတ်မှတ်ထားသည့်မူလသို့ ကန့်သတ်ပါ။ Binding က Squid ဘယ်မှာ connection လက်ခံသလဲ ရွေးပြီး access rules က မည်သည့် request ကို ခွင့်ပြုသလဲ ဆုံးဖြတ်သည်။
sudo squid -k parse -f /etc/squid/squid.conf
စီမံထားသည့် service ကို reload မလုပ်မီ parse error များ ပြင်ပါ။ ခွင့်ပြုထားသော client နှင့် ပယ်ရမည့် အခြားထိန်းချုပ်ထားသော source မှ စမ်းပါ။ ဦးတည်ရာက ခွင့်ပြုသော request ကိုသာရကြောင်း အတည်ပြုပါ။ TCP connection တစ်ခုတည်းက forward ခွင့် မသက်သေပြပါ။