VMESS ကို Websocket နဲ့ TLS ထည့်ပြီး CDN မှာ run ခြင်း
VMESS protocol ကတော့ လူသိပိုများတဲ့ Shadowsocks protocol လိုမျိုးဘဲ SOCKS5 proxy ပေါ်မှာတည်ဆောက်ထားတာပါ။ ပုံမှန် VMESS ကို host လုပ်တဲ့အခါမှာ basic အတိုင်းပဲ လုပ်ကြတာများပါတယ်။ ဒါပေမယ့် bypass method တွေကို အပိတ်များတဲ့နိုင်ငံတွေမှာတော့ ပုံမှန် web traffic နဲ့မတူတာဆိုရင် bypass method လို့မှန်းဆပြီးပိတ်တာဖြစ်တဲ့အတွက် မိနစ်ပိုင်းလောက်နဲ့တင် အသစ် host ထားတဲ့ server တွေအပိတ်ခံရတတ်ပါတယ်။ ဒီ tutorial မှာတော့ Ubuntu ပေါ်မှာ VMESS ကို Websocket TLS ထည့်ပြီး ဘယ်လိုသုံးနိုင်မလဲပြောပြပေးမှာပါ။
ဒါကို setup လုပ်မယ့်သူအနေနဲ့ server ရဲ့ root privilege ရှိဖို့လိုအပ်ပါတယ်။ ဒါ့အပြင် ကိုယ်ပိုင် domain တခုရှိထားပြီး အဲ့ဒီ domain ကို cloudflare ရဲ့ CDN ပေါ်တင်ထားဖို့လိုအပ်ပါတယ်။ နောက်မှာတော့ cloudflare ရဲ့ SSL/TLS option ထဲမှာ Full (strict) ကိုရွေးပေးထားဖို့လိုပါတယ်။ server setup မလုပ်ခင်မှာ server ရဲ့ ip ကို subdomain တခုအနေနဲ့ A record ထည့်ပေးထားဖို့လဲ အရေးကြီးပါတယ်။ setup လုပ်ပြီးလိုမှသွားလုပ်တဲ့အခါ DNS record တွေ update မဖြစ်သေးတာနဲ့ဆို အချိန်ပေးပြီးစောင့်ရတတ်ပါတယ်။
ဒါတွေလုပ်ပြီးပြီဆိုရင် setup စလုပ်လို့ရပါပြီ။
ထုံးစံအတိုင်း repo တွေကို update အရင်လုပ်ပြီး setup အတွက်လိုမယ့် curl ကို install လုပ်ပါမယ်။
sudo apt-get update -y
sudo apt install curl -y
ဒီနောက်မှာတော့ အလွယ်ကူဆုံး setup လုပ်လို့ရမယ့် x-ui ကို vaxilu ရဲ့ github repo ကနေ install လုပ်ပါမယ်။
bash <(curl -Ls https://raw.githubusercontent.com/vaxilu/x-ui/master/install.sh)
ဒီအဆင့်မှာမေးလာတဲ့ မေးခွန်းတွေကို တရုတ်စာလဲမဖတ်တတ်တော့ မှတ်ပြီးတော့ဖြေပါမယ်။
ပထမမေးခွန်းကတော့ setup အတွက် agree လုပ်လားမေးတာပါ။ y လို့ပဲဖြေပါမယ်။
ဒုတိယမေးခွန်းကတော့ သုံးချင်တဲ့ username ကိုမေးတာပါ။ ကိုယ်သုံးချင်တဲ့ username အတိုင်းဖြည့်ပေးနိုင်ပါတယ်။
တတိယမေးခွန်းကတော့ password ထည့်ခိုင်းတာပါ။ ကိုယ်သုံးမယ့် password ကိုထည့်ပေးရုံပါဘဲ။
နောက်ဆုံးမေးခွန်းကတော့ web interface အတွက်သုံးချင်တဲ့ port ကိုရွေးခိုင်းတာပါ။ 1024 ကနေ 40000 ကြားထဲက ကိုယ်သုံးချင်တဲ့ port number ကိုဖြည့်ပေးနိုင်ပါတယ်။
အကုန်အဆင်ပြေပြီး setup လုပ်တာ success ဖြစ်တယ်ဆိုရင် x-ui ရဲ့ comment တွေပေါ်လာပါလိမ့်မယ်။ ဒါဆိုရင် ကျွန်တော်တို့ TLS setup လုပ်မယ့်အပိုင်းကို ဆက်သွားလို့ရပါပြီ။
TLS certificate ထုတ်ယူဖို့အတွက် အရင်ဆုံး certbot ကို install လုပ်ရပါမယ်။
sudo apt-get install certbot -y
certbot ကို install လုပ်ပြီးတဲ့အခါ အောက်မှာပြထားတဲ့ certbot command ကို email နဲ့ domain မှာ ကိုယ့်အပိုင်တွေထည့်ပြီး setup လုပ်ပါ။
sudo certbot certonly --standalone --preferred-challenges http --agree-tos --email yourname@example.com -d subdomain.example.com
ဒီအဆင့်မှာ ကိုယ့်ရဲ့ domain မှာ A record ထည့်ထားပြီးသားဆိုရင် စက္ကန့်ပိုင်းနဲ့ Success ဖြစ်သွားပါလိမ့်မယ်။ အဲဒီနောက်မှာတော့ certificate file path နဲ့ key file path ကို copy ယူပြီး သိမ်းထားဖို့လိုပါတယ်။ ဒါမှ VMESS ထုတ်တဲ့အခါ TLS option ကိုရွေးချယ်နိုင်မှာဖြစ်ပါတယ်။
setup ပိုင်းပြီးသွားတဲ့အခါမှာ key ထုတ်ဖို့အတွက် ကိုယ့်ရဲ့ url နဲ့ port number ကို browser မှာ ရိုက်ထည့်ပြီး x-ui ကို login ဝင်ပါ။ အဲ့ဒီနောက် x-ui ရဲ့ navigation option မှတဆင့် လူပုံပြထားတဲ့ option ကိုနှိပ်ပါ။
ဒီနောက်မှာတော့ plus sign လေးကိုနှိပ်ပါ။ ပေါ်လာတဲ့ popup မှာ vmess ကိုရွေးချယ်ပါ။ port ကိုတော့ websocket အနေနဲ့သုံးမှာဖြစ်လို့ 443 ထားပါမယ်။ ပြီးရင်တော့ tls ကို enable လုပ်ပါ။ tls enabled ဖြစ်တဲ့အခါ domain နဲ့ certificate path တွေကိုဖြည့်ရပါမယ်။ domain နေရာမှာတော့ ကိုယ့်ရဲ့ domain ကိုဖြည့်နိုင်ပြီး certificate path ရဲ့ အပေါ်တခုမှာတော့ fullchain.pem နဲ့ဆုံးတဲ့ path ကို /etc ကနေစပြီးထည့်ပါ။ အောက်တခုမှာ privkey.pem နဲ့ဆုံးတဲ့ path ကိုထည့်ပါ။ တကယ်လို့ ကိုယ့် server က traffic limit ရှိတယ်ဆိုရင် configuration profile ကိုလဲ limit ထားသင့်ပါတယ်။ စိတ်တိုင်းကျဖြစ်ပြီဆိုရင် အောက်ဆုံးက အပြာရောင် button လေးကိုနှိပ်လိုက်တာနဲ့ profile က active ဖြစ်သွားပါပြီ။
Configuration profile ကိုတော့ အသုံးပြုမယ့် client application ကနေတဆင့် QR scan ဖတ်ပြီးသုံးနိုင်သလို QR code အောက်မှာပေါ်နေတဲ့ copy button ကိုလဲ နှိပ်ပြီးသုံးနိုင်ပါတယ်။