# SSH Tunnel သုံးပြီး Windows နဲ့ Command Line မှာ ကျော်သုံးမယ်

ခုရက်ပိုင်း GitHub ပိတ်တဲ့အထဲပါသွားတော့ remote git push ဖို့နဲ့ pull ဖို့ ပြဿနာတက်လာတော့ VPN software မသုံးဘဲ ဘယ်လိုနည်းနဲ့ လုပ်ရမလဲ ကြံဖန် စဉ်းစား လက်တွေ့စမ်းသပ်ကြည့်ရင်းနဲ့ ဒီနည်းလေးတွေ့လို့ မျှဝေပေးလိုက်ပါတယ်။

[https://kalaung.org/ssh-tunnel-website](https://kalaung.org/ssh-tunnel-website) ဒီ Post မှာ SSH Tunnel သုံးပြီး ကြည့်ချင်တဲ့ Website ကျော်ကြည့်နည်း ကို မျှဝေပေးခဲ့ပြီးပါပြီ။ အဲ့ Post ကို အရင်ဖတ်ပြီး လက်တွေ့လုပ်ထားဖို့လိုပါတယ်။ အဲ့တုန်းက Firefox browser မှာ ssh tunnel configure လုပ်ပြီး သုံးတဲ့ နည်း ဆိုတော့ Browser ကပဲ ကျော်ကြည့်လို့ရပါတယ်။ ပြဿနာက command line က git pull/push တို့ composer install တို့ npm install တို့ သုံးရင် ပိတ်ထားတော့ သုံးမရဘူး။

---

**Configuring proxy setting for Windows**

Browser မှာ tunnel configure လုပ်ပြီး ကျော်သလို Windows မှာ OS တစ်ခုလုံးအနေနဲ့ tunnel configure လုပ်လို့ရနိုင်တယ်လို့ စဉ်းစားမိပြီး Window Setting ထဲက Manual Proxy setup မှာ Proxy IP address နဲ့ Port ကိုသွားထည့်ပြီးစမ်းကြည့်ပါတယ်။ မရပါဘူး။ internet connection ပါ မရတော့။ နောက်ဆုံး ရှာရင်းဖွေရင်းနဲ့ Screenshot ပုံပါအတိုင်း IP address နဲ့ Socks config တွဲထည့်ရတာ တွေ့ပါတယ်။

![](https://cdn.hashnode.com/res/hashnode/image/upload/v1722081671514/6d162055-4ec8-4a0f-96af-7c35832b3082.png align="center")

ပုံပါအတိုင်း configure လုပ်၊ Save ပြီးတာနဲ့ Windows တစ်ခုလုံး System level ကနေ Bypass လုပ်နေပါပြီ။

Chrome, Edge, Firefox ဘယ် Browser တွေမှာပဲဖြစ်ဖြစ် Proxy Setting ကို System Proxy Setting ရွေးလိုက်တာနဲ့ Bypass လုပ်လို့ရပါပြီ။

မသုံးတော့ရင်တော့ Manual Proxy Setting မှာ Use a proxy server ကိုပြန် Off လုပ်ပါ။

---

**Configuring proxy setting for Command Prompt**

git လို composer လို Command line program တွေအတွက် Bypass လုပ်ဖို့ ALL\_PROXY Environment Variable ထည့်ဖို့လိုပါသေးတယ်။ Command Prompt မှာ အောက်ပါအတိုင်း ရိုက်ထည့်ပါ။ ALL\_PROXY, HTTP\_PROXY, HTTPS\_PROXY variable ၃ ခုစလုံး ထည့်ပါ။

```bash
set ALL_PROXY=socks5://127.0.0.1:8080
set HTTP_PROXY=socks5://127.0.0.1:8080
set HTTPS_PROXY=socks5://127.0.0.1:8080
```

ပြီးတာနဲ့ Command Prompt ကနေ ပိတ်ထားတဲ့ Site တွေကို Access လုပ်နိုင်ပါပြီ။ git github, composer, npm စတာတွေ အဆင်ပြေပြေ သုံးလို့ရပါပြီ။

*set* နဲ့ ဆို Command Prompt session တစ်ခုတည်းမှာပဲ Bypass ဖြစ်ပါတယ်။ ပိတ်လိုက်ရင် Variable က ပျက်သွားမှာပါ။ နောက်တစ်ခါဖွင့်ရင် တစ်ခါရိုက်ထည့်ရပါမယ်။

---

Permanent အနေနဲ့ ထည့်ချင်ရင်တော့ setx ကိုသုံးလို့ရပါတယ်။ အောက်ပါအတိုင်း ရိုက်ထည့်ပါ။

```bash
setx ALL_PROXY socks5://127.0.0.1:8080
setx HTTP_PROXY socks5://127.0.0.1:8080
setx HTTPS_PROXY socks5://127.0.0.1:8080
```

လက်ရှိ command prompt session ကိုပိတ်ပြီး အသစ်ပြန်ဖွင့်ရင် အလုပ်လုပ်ပါပြီ။ ဒါပေမယ့် command prompt တွေအားလုံးမှာ proxy ကြီး အမြဲထည့်ထားသလိုဖြစ်ပြီး tunnel မပွင့်နေရင် command prompt ကနေ internet access ရမှာမဟုတ်တော့ပါ။ ဒီ နည်းလမ်းကိုတော့ Recommend မလုပ်ပါ။

Permanent အနေနဲ့ ထည့်ထားတာဖြစ်တဲ့အတွက် မသုံးတော့ရင် Reset ပြန်လုပ်ဖို့လိုပါတယ်။ အောက်ပါ အတိုင်း Reset လုပ်လို့ရပါတယ်။

```bash
setx ALL_PROXY ""
setx HTTP_PROXY ""
setx HTTPS_PROXY ""
```

မှတ်ချက်။ Server, System Administration ပိုင်း ကျွမ်းကျင်သူများ အတွက် အရေးပေါ် ကျော်သုံး နည်းလမ်းတစ်ခု အနေဖြင့်သာ ရည်ရွယ်ပါသည်။ သာမန် User တွေအတွက် မလွယ်ကူပါ။

Aung Kyaw Minn

[tallysale.com](https://tallysale.com)
