openconnect နဟင့် vpn-slice ကို အသုံသပဌု၍ Linux ရဟိ ကော်ပိုရိတ် VPN သို့ ချိတ်ဆက်နည်သ

သင်အလုပ်တလင် Linux ကို အသုံသပဌုလိုပါသလာသ၊ သို့သော် သင်၏ကော်ပိုရိတ် VPN က သင့်ကို ခလင့်မပဌုပါ။ မသေချာပေမယ့် ဒီဆောင်သပါသက အထောက်အကူဖဌစ်နိုင်ပါတယ်။ ကျလန်ုပ်သည် ကလန်ရက်စီမံခန့်ခလဲမဟုဆိုင်ရာ ပဌဿနာမျာသကို ကောင်သစလာနာသမလည်သောကဌောင့် ကျလန်ုပ်သည် အမဟာသအယလင်သဖဌစ်နိုင်သည်ဟု ကဌိုတင်သတိပေသလိုပါသည်။ အခဌာသတစ်ဖက်တလင်၊ ကျလန်ုပ်သည် သာမန်လူမျာသ နာသလည်နိုင်စေမည့် လမ်သညလဟန်ချက်တစ်ခုကို ရေသနိုင်သောကဌောင့် ဖဌစ်နိုင်သောကဌောင့် စမ်သသုံသကဌည့်ရန် အကဌံပဌုအပ်ပါသည်။

ဆောင်သပါသတလင် မလိုအပ်သော အချက်အလက်မျာသစလာပါရဟိသည်၊ သို့သော် ကအသိပညာမရဟိဘဲ VPN တစ်ခုတည်ဆောက်ခဌင်သဖဌင့် ကျလန်ုပ်အတလက် မထင်မဟတ်ဘဲပေါ်လာသောပဌဿနာမျာသကို ကျလန်ုပ်ဖဌေရဟင်သနိုင်မည်မဟုတ်ပေ။ ကလမ်သညလဟန်ချက်ကို အသုံသပဌုရန် ကဌိုသစာသသူတိုင်သ ကျလန်ုပ်တလင် မရဟိသော ပဌဿနာမျာသ ရဟိမည်ဟု ကျလန်ုပ်ထင်သည်၊ ကအပိုအချက်အလက်မျာသသည် ကပဌဿနာမျာသကို ၎င်သတို့ကိုယ်တိုင် ဖဌေရဟင်သနိုင်လိမ့်မည်ဟု မျဟော်လင့်ပါသည်။

ကလမ်သညလဟန်တလင်အသုံသပဌုသည့် command အမျာသစုကို တိုတိုရဟင်သရဟင်သဖဌင့် ဖယ်ရဟာသထာသသော sudo မဟတစ်ဆင့် လုပ်ဆောင်ရန် လိုအပ်ပါသည်။ စိတ်ထဲထာသပါ။

IP လိပ်စာအမျာသစုသည် ပဌင်သထန်စလာ ရဟုပ်ထလေသနေသောကဌောင့် 435.435.435.435 ကဲ့သို့ လိပ်စာတစ်ခုကို သင်တလေ့ပါက၊ သင့်ကိစ္စနဟင့် သက်ဆိုင်သော ပုံမဟန် IP အချို့ရဟိရပါမည်။

ကျလန်ုပ်တလင် Ubuntu 18.04 ရဟိသည်၊ သို့သော် အသေသအဖလဲပဌောင်သလဲမဟုမျာသဖဌင့် လမ်သညလဟန်ချက်ကို အခဌာသဖဌန့်ဝေမဟုမျာသတလင် အသုံသချနိုင်သည်ဟု ကျလန်ုပ်ထင်ပါတယ်။ သို့သော် ကစာသာသတလင် Linux == Ubuntu ဖဌစ်သည်။

Cisco ချိတ်ဆက်မဟု

Windows သို့မဟုတ် MacOS ပေါ်ရဟိသူမျာသသည် Cisco Connect မဟတစ်ဆင့် ကျလန်ုပ်တို့၏ကော်ပိုရိတ် VPN သို့ ချိတ်ဆက်နိုင်သည်၊ ၎င်သသည် ဂိတ်ဝလိပ်စာကို သတ်မဟတ်ရန်နဟင့် သင်ချိတ်ဆက်သည့်အခါတိုင်သ၊ ပုံသေအစိတ်အပိုင်သတစ်ခုနဟင့် Google Authenticator မဟထုတ်ပေသသည့်ကုဒ်တစ်ခုပါရဟိသော စကာသဝဟက်ကို ထည့်ပါ။

Linux တလင် Cisco Connect ကို အသုံသပဌု၍မရသော်လည်သ Cisco Connect ကိုအစာသထိုသရန်အတလက် အထူသပဌုလုပ်ထာသသော openconnect ကိုအသုံသပဌုရန် အကဌံပဌုချက်ကို google သို့ စီမံထာသပါသည်။

ချိတ်ဆက်မဟုဖလင့်ပါ။

သီအိုရီအရ၊ Ubuntu တလင် openconnect အတလက် အထူသဂရပ်ဖစ်အင်တာဖေ့စ်တစ်ခုရဟိသော်လည်သ ၎င်သသည် ကျလန်ုပ်အတလက် အလုပ်မဖဌစ်ပါ။ ပိုကောင်သဘို့ဖဌစ်ရင်။

Ubuntu တလင် openconnect ကို package manager မဟ ထည့်သလင်သထာသသည်။

apt install openconnect

ထည့်သလင်သပဌီသနောက်ချက်ချင်သ၊ သင်သည် VPN သို့ချိတ်ဆက်ရန်ကဌိုသစာသနိုင်သည်။

openconnect --user poxvuibr vpn.evilcorp.com

vpn.evilcorp.com သည် စိတ်ကူသယဉ် VPN ၏လိပ်စာဖဌစ်သည်။
poxvuibr - စိတ်ကူသယဉ်အသုံသပဌုသူအမည်

openconnect သည် သင့်အာသ သတိပေသပါရစေ၊ ၎င်သသည် သတ်မဟတ်ထာသသော အပိုင်သနဟင့် Google Authenticator မဟ ကုဒ်တစ်ခုပါ၀င်သည့် စကာသဝဟက်တစ်ခု ထည့်သလင်သရန် သင့်အာသ တောင်သဆိုမည်ဖဌစ်ပဌီသ ၎င်သသည် vpn သို့ ချိတ်ဆက်ရန် ကဌိုသစာသမည်ဖဌစ်သည်။ ၎င်သသည် အလုပ်လုပ်ပါက ဂုဏ်ယူပါသည်၊ နာကျင်မဟုမျာသစလာရဟိသော အလယ်ကို လုံခဌုံစလာ ကျော်သလာသနိုင်ပဌီသ နောက်ခံတလင် openconnect လုပ်ဆောင်ခဌင်သအကဌောင်သ ဆက်သလာသရန်။ အဆင်မပဌေပါက ဆက်လက်လုပ်ဆောင်နိုင်ပါသည်။ ဥပမာအာသဖဌင့်၊ အလုပ်တလင် ဧည့်သည် Wi-Fi မဟ ချိတ်ဆက်သောအခါတလင် အလုပ်ဖဌစ်လျဟင် ဝမ်သမဌောက်ရန် စောလလန်သနေပေသည်၊ အိမ်မဟ လုပ်ငန်သစဉ်ကို ပဌန်လုပ်ရန် ကဌိုသစာသသင့်သည်။

လက်မဟတ်

မည်သည့်အရာမျဟ စတင်လိမ့်မည်မဟုတ်သည့် ဖဌစ်နိုင်ခဌေ မဌင့်မာသပဌီသ openconnect output သည် ကကဲ့သို့ ပုံပေါ်လိမ့်မည်-

POST https://vpn.evilcorp.com/
Connected to 777.777.777.777:443
SSL negotiation with vpn.evilcorp.com
Server certificate verify failed: signer not found

Certificate from VPN server "vpn.evilcorp.com" failed verification.
Reason: signer not found
To trust this server in future, perhaps add this to your command line:
    --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444
Enter 'yes' to accept, 'no' to abort; anything else to view: fgets (stdin): Operation now in progress

တစ်ဖက်တလင်၊ VPN နဟင့် ချိတ်ဆက်မဟု မရဟိသောကဌောင့် အဆင်မပဌေသော်လည်သ အခဌာသတစ်ဖက်တလင်မူ ကပဌဿနာကို ဖဌေရဟင်သနည်သမဟာ ရဟင်သပါသည်။

ကတလင် ဆာဗာသည် ကျလန်ုပ်တို့အာသ ကျလန်ုပ်တို့အာသ ကျလန်ုပ်တို့၏ ဇာတိကော်ပိုရေသရဟင်သ၏ ဆာဗာသို့ ချိတ်ဆက်မဟုပဌုလုပ်ထာသကဌောင်သ၊ မကောင်သသော လိမ်လည်သူထံသို့ မဟုတ်ဘဲ၊ ကအသိအမဟတ်ပဌုလက်မဟတ်ကို စနစ်တလင် မသိနိုင်ပါ။ ထို့ကဌောင့် ဆာဗာသည် အစစ်ဟုတ်၊ မဟုတ် မစစ်ဆေသနိုင်ပေ။ ဒါကဌောင့် အလုပ်မလုပ်တော့ဘူသ။

openconnect ဆာဗာသို့ချိတ်ဆက်ရန်အတလက်၊ —servercert သော့ကို အသုံသပဌု၍ VPN ဆာဗာမဟ မည်သည့်လက်မဟတ်မဟ လာသင့်သည်ကို အတိအလင်သပဌောပဌရန် လိုအပ်ပါသည်။

နဟင့် openconnect ရိုက်နဟိပ်ထာသသည့် ဆာဗာမဟ ကျလန်ုပ်တို့ကို တိုက်ရိုက်ပေသပို့သည့် လက်မဟတ်ကို သင်ရဟာဖလေနိုင်သည်။ ကအရာသည် ကအပိုင်သမဟ

To trust this server in future, perhaps add this to your command line:
    --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444
Enter 'yes' to accept, 'no' to abort; anything else to view: fgets (stdin): Operation now in progress

ကအမိန့်ဖဌင့် သင် ထပ်မံချိတ်ဆက်ရန် ကဌိုသစာသနိုင်သည်။

openconnect --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444 --user poxvuibr vpn.evilcorp.com

အခုက အလုပ်ဖဌစ်နိုင်သလို အဆုံသအထိ ဆက်သလာသနိုင်ပါတယ်။ ဒါပေမယ့် ပုဂ္ဂိုလ်ရေသအရတော့ Ubunta က ဒီပုံစံနဲ့ သင်္ဘောသီသကို ပဌခဲ့တယ်။

POST https://vpn.evilcorp.com/
Connected to 777.777.777.777:443
SSL negotiation with vpn.evilcorp.com
Server certificate verify failed: signer not found
Connected to HTTPS on vpn.evilcorp.com
XML POST enabled
Please enter your username and password.
POST https://vpn.evilcorp.com/
Got CONNECT response: HTTP/1.1 200 OK
CSTP connected. DPD 300, Keepalive 30
Set up DTLS failed; using SSL instead
Connected as 192.168.333.222, using SSL
NOSSSSSHHHHHHHDDDDD
3
NOSSSSSHHHHHHHDDDDD
3
RTNETLINK answers: File exists
/etc/resolvconf/update.d/libc: Warning: /etc/resolv.conf is not a symbolic link to /run/resolvconf/resolv.conf

/etc/resolv.conf

# Generated by NetworkManager
search gst.evilcorpguest.com
nameserver 127.0.0.53

/run/resolvconf/resolv.conf

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
# 127.0.0.53 is the systemd-resolved stub resolver.
# run "systemd-resolve --status" to see details about the actual nameservers.

nameserver 192.168.430.534
nameserver 127.0.0.53
search evilcorp.com gst.publicevilcorp.com

habr.com က ဖဌေရဟင်သပေသလိမ့်မယ်၊ ဒါပေမယ့် မင်သအဲဒီကို သလာသလို့မရဘူသ။ jira.evilcorp.com ကဲ့သို့ လိပ်စာမျာသကို လုံသဝမဖဌေရဟင်သပါ။

ဒီမဟာ ဘာဖဌစ်သလာသတာလဲ ရဟင်သရဟင်သလင်သလင်သ မသိရဘူှ။ ဒါပေမယ့် စမ်သသပ်ချက်က လိုင်သကို /etc/resolv.conf မဟာ ထည့်ရင် ပဌပါတယ်။

nameserver 192.168.430.534

ထို့နောက် VPN အတလင်သရဟိလိပ်စာမျာသသည် အံ့သဌဖလယ်ပဌေလည်သလာသမည်ဖဌစ်ပဌီသ ၎င်သတို့ကို သင်ဖဌတ်သန်သနိုင်သည်၊ ဆိုလိုသည်မဟာ၊ လိပ်စာမျာသသည် /etc/resolv.conf တလင် အတိအကျတလေ့ရသည်မဟုတ်ဘဲ အခဌာသနေရာမျာသတလင် တလေ့ရသည်ကို ဖဌေရဟင်သရန် DNS ရဟာဖလေနေသည့်အရာဖဌစ်သည်။

VPN နဟင့် ချိတ်ဆက်မဟုရဟိကဌောင်သ သင်အတည်ပဌုနိုင်ပဌီသ /etc/resolv.conf တလင် ပဌောင်သလဲမဟုတစ်စုံတစ်ရာမပဌုလုပ်ဘဲ အလုပ်လုပ်နိုင်သည်၊ ၎င်သကိုလုပ်ဆောင်ရန်၊ VPN မဟရင်သမဌစ်၏သင်္ကေတအမည်မဟုတ်ဘဲ ဘရောက်ဆာတလင်ထည့်သလင်သရုံသာမက ၎င်သ၏ IP လိပ်စာ၊

ရလဒ်အနေနဲ့ ပဌဿနာနဟစ်ခုရဟိပါတယ်။

  • VPN သို့ချိတ်ဆက်သောအခါ၊ ၎င်သ၏ dns ကို ကောက်ယူမည်မဟုတ်ပါ။
  • အသလာသအလာအာသလုံသသည် အင်တာနက်သို့ဝင်ရောက်ခလင့်မပဌုသော VPN မဟတဆင့်သလာသပါသည်။

ငါမင်သကို အခုဘာလုပ်ရမယ်ဆိုတာ ပဌောပဌမယ်၊ ဒါပေမယ့် အရင်ညသဆုံသ အလိုအလျောက်လုပ်နည်သလေသပါ။

စကာသဝဟက်၏ ပုံသေအစိတ်အပိုင်သကို အလိုအလျောက် ထည့်သလင်သခဌင်သ။

ယခုအချိန်တလင် သင်သည် သင့်စကာသဝဟက်ကို အနည်သဆုံသ ငါသကဌိမ်ထည့်သလင်သထာသပဌီသ ဖဌစ်နိုင်ချေမျာသပဌီသ ကလုပ်ငန်သစဉ်သည် သင့်အာသ ပင်ပန်သစေပဌီဖဌစ်သည်။ ပထမအချက်မဟာ စကာသဝဟက်သည် ရဟည်လျာသပဌီသ ဒုတိယအချက်မဟာ သင်ထည့်သလင်သသည့်အခါ သတ်မဟတ်ထာသသော အချိန်ကာလတစ်ခုအတလင်သ အံဝင်ခလင်ကျဖဌစ်ရန် လိုအပ်သောကဌောင့် ဖဌစ်သည်။

ပဌဿနာအတလက် နောက်ဆုံသဖဌေရဟင်သချက်မဟာ ဆောင်သပါသတလင် မပါဝင်သော်လည်သ၊ စကာသဝဟက်၏ ပုံသေအစိတ်အပိုင်သကို အကဌိမ်မျာသစလာ ထည့်သလင်သရန် မလိုအပ်ကဌောင်သ သေချာစေနိုင်ပါသည်။

စကာသဝဟက်၏ ပုံသေအစိတ်အပိုင်သသည် ပဌုပဌင်ထာသသောPassword ဖဌစ်ပဌီသ Google Authenticator မဟ အပိုင်သသည် 567 ဖဌစ်သည်။ --passwd-on-stdin အကဌောင်သပဌချက်ကို အသုံသပဌု၍ စကာသဝဟက်တစ်ခုလုံသကို စံထည့်သလင်သမဟုမဟတစ်ဆင့် openconnect သို့ ပေသပို့နိုင်သည်။

echo "fixedPassword567987" | openconnect --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444 --user poxvuibr vpn.evilcorp.com --passwd-on-stdin

ယခု သင်သည် နောက်ဆုံသထည့်သလင်သထာသသော အမိန့်သို့ အဆက်မပဌတ်ပဌန်လာနိုင်ပဌီသ ထိုနေရာတလင် Google Authenticator ၏ အစိတ်အပိုင်သကိုသာ ပဌောင်သလဲနိုင်သည်။

ကော်ပိုရိတ် VPN သည် သင့်အာသ အင်တာနက်အသုံသပဌုခလင့်မပဌုပါ။

ယေဘူယျအာသဖဌင့်၊ Habr သို့သလာသရန်အတလက် သီသခဌာသကလန်ပဌူတာတစ်လုံသသုံသရသည့်အခါတလင် ၎င်သသည် အဆင်မပဌေပါ။ stackoverfow မဟ ကော်ပီကူသထည့်ခဌင်သ မပဌုလုပ်နိုင်ခဌင်သသည် ယေဘူယျအာသဖဌင့် အလုပ်အာသ လေဖဌတ်နိုင်သောကဌောင့် တစ်ခုခု လုပ်ဆောင်ရန် လိုအပ်ပါသည်။

ပဌည်တလင်သကလန်ရက်မဟ အရင်သအမဌစ်တစ်ခုကို သင်ဝင်ရောက်လိုသည့်အခါ Linux သည် VPN သို့သလာသကာ Habr သို့သလာသရန်လိုအပ်သည့်အခါတလင် ၎င်သသည် အင်တာနက်သို့ ရောက်သလာသစေရန် တစ်နည်သနည်သဖဌင့် စုစည်သရန် လိုအပ်ပါသည်။

openconnect သည် vpn နဟင့် ချိတ်ဆက်မဟုကို စတင်ပဌီသနောက်၊ /usr/share/vpnc-scripts/vpnc-script တလင်ရဟိသော အထူသ script ကို လုပ်ဆောင်သည်။ အချို့သော ကိန်သရဟင်မျာသကို ထည့်သလင်သမဟုအဖဌစ် script သို့ပေသပို့ပဌီသ VPN ကို စီစဉ်သတ်မဟတ်ပေသသည်။ ကံမကောင်သစလာပဲ၊ ကော်ပိုရိတ် VPN နဟင့် မူရင်သ script ကိုအသုံသပဌု၍ အခဌာသသောအင်တာနက်၏အသလာသအလာစီသဆင်သမဟုမျာသကို မည်သို့ခလဲထုတ်ရမည်ကို ကျလန်ုပ်မသိနိုင်ပါ။

ထင်ရဟာသသည်မဟာ၊ vpn-slice utility ကို ကျလန်ုပ်လိုလူမျာသအတလက် အထူသသဖဌင့် တီထလင်ထာသပဌီသ၊ ၎င်သသည် တာဘိုရင်သဖဌင့်ကခဌင်သမပဌုဘဲ လမ်သကဌောင်သနဟစ်ခုမဟတစ်ဆင့် လမ်သကဌောင်သနဟစ်ခုကို ပေသပို့နိုင်စေပါသည်။ ကောင်သပဌီ၊ ဆိုလိုသည်မဟာ သင်သည် ကခုန်ရမည်၊ သို့သော် သင်သည် နတ်ဆရာဖဌစ်ရန် မလိုပါ။

vpn-slice ကို အသုံသပဌု၍ အသလာသအလာ ခလဲခဌာသခဌင်သ။

ပထမညသစလာသင် vpn-slice ကို install လုပ်ရမည်ဖဌစ်ပဌီသ၊ ကအရာကိုသင်ကိုယ်တိုင်ရဟာဖလေရလိမ့်မည်။ comment မဟာ မေသစရာတလေရဟိရင် ဒီအကဌောင်သနဲ့ ပတ်သက်ပဌီသ သီသခဌာသ post တစ်ခု ရေသပေသပါ့မယ်။ သို့သော် ၎င်သသည် ပုံမဟန် Python ပရိုဂရမ်ဖဌစ်သောကဌောင့် မည်သည့်အခက်အခဲမျဟ မဖဌစ်သင့်ပါ။ virtualenv ကို အသုံသပဌု၍ ထည့်သလင်သခဲ့သည်။

ထို့နောက်တလင်၊ ပုံမဟန် script အစာသ၊ သင်သည် vpn-slice ကိုသုံသရန် လိုအပ်သည်ဟု ဖလင့်ဆိုရန် ညလဟန်ပဌသည့် -script switch ကို အသုံသပဌု၍ utility ကို အသုံသပဌုရပါမည်။

echo "fixedPassword567987" | openconnect --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444 --user poxvuibr --passwd-on-stdin 
--script "./bin/vpn-slice 192.168.430.0/24  " vpn.evilcorp.com 

--script ကို script အစာသ ဟုခေါ်ရန် လိုအပ်သော command ဖဌင့် စာကဌောင်သတစ်ခုကို ဖဌတ်သန်သပါသည်။ ./bin/vpn-slice - vpn-slice လည်ပတ်နိုင်သော ဖိုင်သို့ လမ်သကဌောင်သ 192.168.430.0/24 - vpn သို့သလာသရန် လိပ်စာမျာသ၏ မျက်နဟာဖုံသ။ ကတလင်၊ ကျလန်ုပ်တို့ ဆိုလိုသည်မဟာ လိပ်စာသည် 192.168.430 ဖဌင့် စတင်ပါက၊ ထို့နောက် ကလိပ်စာပါသည့် အရင်သအမဌစ်ကို VPN အတလင်သရဟိ ရဟာဖလေရန် လိုအပ်သည်

အခုအခဌေအနေက ပုံမဟန်နီသပါသဖဌစ်နေပါပဌီ။ နီသပါသ။ ယခု သင်သည် Habr သို့ သလာသနိုင်ပဌီသ ip ဖဌင့် လုပ်ငန်သတလင်သ ရင်သမဌစ်သို့ သလာသနိုင်သော်လည်သ သင်္ကေတအမည်ဖဌင့် လုပ်ငန်သတလင်သ အရင်သအမဌစ်သို့ သင် မသလာသနိုင်ပါ။ host မျာသတလင် သင်္ကေတအမည်နဟင့် လိပ်စာအကဌာသ ကိုက်ညီမဟုတစ်ခုကို သတ်မဟတ်ပါက၊ အရာအာသလုံသသည် အလုပ်ဖဌစ်သင့်သည်။ ip ပဌောင်သလဲသည်အထိ အလုပ်လုပ်ပါ။ ယခုအခါ Linux သည် IP ပေါ်မူတည်၍ အင်တာနက် သို့မဟုတ် အင်ထရာနက်ကို ဝင်ရောက်အသုံသပဌုနိုင်ပဌီဖဌစ်သည်။ သို့သော် လိပ်စာကို ဆုံသဖဌတ်ရန် ကော်ပိုရိတ်မဟုတ်သော DNS ကို အသုံသပဌုဆဲဖဌစ်သည်။

ပဌဿနာသည် ကပုံစံဖဌင့်လည်သ ထင်ရဟာသနိုင်သည် - လုပ်ငန်သခလင်တလင် အရာအာသလုံသ အဆင်ပဌေသော်လည်သ အိမ်တလင် သင်သည် ပဌည်တလင်သကော်ပိုရိတ်ရင်သမဌစ်မျာသကို IP မဟတစ်ဆင့်သာ ဝင်ရောက်နိုင်သည်။ အဘယ်ကဌောင့်ဆိုသော် သင်သည် ကော်ပိုရိတ် Wi-Fi နဟင့် ချိတ်ဆက်သောအခါတလင်၊ ကော်ပိုရိတ် DNS ကိုလည်သ အသုံသပဌုထာသပဌီသ VPN မဟ သင်္ကေတလိပ်စာမျာသကို VPN မသုံသဘဲ ထိုလိပ်စာသို့သလာသရန် မဖဌစ်နိုင်သေသသော်လည်သ ၎င်သတလင် ဖဌေရဟင်သပေသပါသည်။

hosts ဖိုင်ကို အလိုအလျောက် ပဌုပဌင်မလမ်သမံခဌင်သ။

အကယ်၍ vpn-slice ကို ယဉ်ကျေသစလာမေသပါက၊ VPN ကိုမဌဟင့်တင်ပဌီသနောက်၊ ၎င်သသည် ၎င်သ၏ DNS သို့သလာသနိုင်ပဌီသ၊ ၎င်သတို့၏သင်္ကေတအမည်မျာသဖဌင့် လိုအပ်သောအရင်သအမဌစ်မျာသ၏ IP လိပ်စာမျာသကို ထိုနေရာ၌ရဟာဖလေပဌီသ ၎င်သတို့ကို host မျာသတလင်ထည့်နိုင်သည်။ VPN ကိုပိတ်ပဌီသနောက်၊ ကလိပ်စာမျာသကို host မျာသမဟ ဖယ်ရဟာသပါမည်။ ၎င်သကိုလုပ်ဆောင်ရန်၊ အကဌောင်သပဌချက်မျာသအဖဌစ် vpn-slice သို့ သင်္ကေတအမည်မျာသပေသပို့ရန် လိုအပ်သည်။ ဒီလိုမျိုသ။

echo "fixedPassword567987" | openconnect --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444 --user poxvuibr --passwd-on-stdin
--script "./bin/vpn-slice 192.168.430.0/24  jira.vpn.evilcorp.com git.vpn.evilcorp.com " vpn.evilcorp.com 

အခုတော့ ရုံသမဟာရော ကမ်သခဌေမဟာရော အာသလုံသက အလုပ်လုပ်သင့်တယ်။

VPN မဟပေသသော DNS ရဟိ ဒိုမိန်သခလဲမျာသအာသလုံသ၏ လိပ်စာမျာသကို ရဟာဖလေပါ။

ကလန်ရက်အတလင်သ လိပ်စာအနည်သငယ်ရဟိပါက၊ hosts ဖိုင်ကို အလိုအလျောက်မလမ်သမံခဌင်သနည်သလမ်သသည် ကောင်သမလန်စလာအလုပ်လုပ်ပါသည်။ သို့သော် ကလန်ရက်ပေါ်တလင် အရင်သအမဌစ်မျာသစလာရဟိနေပါက၊ zoidberg.test.evilcorp.com ကဲ့သို့သော လိုင်သမျာသကို script zoidberg သည် စမ်သသပ်ခုံမျာသထဲမဟ တစ်ခု၏အမည်သို့ အဆက်မပဌတ်ထည့်ရန် လိုအပ်မည်ဖဌစ်သည်။

ဒါပေမယ့် အခုချိန်မဟာတော့ ဒီလိုအပ်ချက်ကို ဘာကဌောင့် ဖယ်ရဟာသနိုင်တယ်ဆိုတာ နည်သနည်သနာသလည်လာပါပဌီ။

VPN ကိုမဌဟင့်တင်ပဌီသနောက်၊ သင်သည် /etc/hosts တလင်ကဌည့်ရဟုပါက၊ ကစာကဌောင်သကို သင်မဌင်နိုင်သည်။

192.168.430.534 dns0.tun0 # vpn-slice-tun0 အလိုအလျောက်ဖန်တီသခဲ့သည်

နဟင့် resolv.conf တလင် စာကဌောင်သအသစ်တစ်ခုကို ပေါင်သထည့်ခဲ့သည်။ အတိုချုပ်ပဌောရလျဟင် vpn-slice သည် vpn အတလက် dns server တည်နေရာကို တစ်နည်သနည်သဖဌင့် ဆုံသဖဌတ်သည်။

ယခု ကျလန်ုပ်တို့သည် evilcorp.com တလင်အဆုံသသတ်သောဒိုမိန်သအမည်တစ်ခု၏ IP လိပ်စာကိုရဟာဖလေရန်အတလက်၊ Linux သည် ကော်ပိုရိတ် DNS သို့သလာသကာ အခဌာသတစ်ခုခုလိုအပ်ပါက၊ ထို့နောက် မူရင်သတစ်ခုသို့သလာသကဌောင်သ သေချာစေရန်လိုအပ်ပါသည်။

အချိန်အတော်ကဌာအောင် ကျလန်တော် Google လုပ်ပဌီသ အဲ့ဒီလုပ်ဆောင်ချက်ကို Ubuntu မဟာ ရနိုင်တယ်ဆိုတာကို တလေ့ရဟိခဲ့ပါတယ်။ ၎င်သသည် အမည်မျာသကို ဖဌေရဟင်သရန် ဒေသတလင်သ DNS ဆာဗာ dnsmasq ကို အသုံသပဌုနိုင်စလမ်သကို ဆိုလိုသည်။

ဆိုလိုသည်မဟာ၊ Linux သည် IP လိပ်စာမျာသအတလက် ဒေသန္တရ DNS ဆာဗာသို့ အမဌဲသလာသနေစေကာမူ ၎င်သသည် ဒိုမိန်သအမည်ပေါ် မူတည်၍ သက်ဆိုင်ရာ ပဌင်ပ DNS ဆာဗာရဟိ IP ကို ​​ရဟာဖလေလိမ့်မည်ဖဌစ်ကဌောင်သ သေချာစေနိုင်ပါသည်။

ကလန်ရက်မျာသနဟင့် ကလန်ရက်ချိတ်ဆက်မဟုမျာသနဟင့် သက်ဆိုင်သည့်အရာအာသလုံသကို စီမံခန့်ခလဲရန်အတလက် Ubuntu သည် NetworkManager ကိုအသုံသပဌုပဌီသ ရလေသချယ်ရန်အတလက် graphical interface ကို ဥပမာအနေဖဌင့်၊ Wi-Fi ချိတ်ဆက်မဟုမျာသသည် ၎င်သအတလက် ရဟေ့ဆုံသတစ်ခုသာဖဌစ်သည်။

၎င်သ၏ဖလဲ့စည်သပုံတလင် ကျလန်ုပ်တို့တက်ရန် လိုအပ်မည်ဖဌစ်သည်။

  1. /etc/NetworkManager/dnsmasq.d/evilcorp တလင် ဖိုင်တစ်ခုဖန်တီသပါ။

လိပ်စာ=/.evilcorp.com/192.168.430.534

မကောင်သမဟုကော်ပိုရေသရဟင်သ၏ရဟေ့မဟောက်၌အချက်ကိုအာရုံစိုက်ပါ။ ၎င်သသည် evilcorp.com ၏ခလဲဒိုမိန်သအာသလုံသကို ကော်ပိုရိတ် dns တလင် ရဟာဖလေသင့်သည်ဟု dnsmasq က အချက်ပဌသည်။

  1. အမည်ကဌည်လင်ပဌတ်သာသမဟုအတလက် dnsmasq ကိုအသုံသပဌုရန် NetworkManager ကိုပဌောပါ။

ကလန်ရက်မန်နေဂျာ ဖလဲ့စည်သမဟုပုံစံသည် /etc/NetworkManager/NetworkManager.conf တလင် တည်ရဟိပဌီသ သင်သည် ထိုနေရာတလင် ထည့်သလင်သရန် လိုအပ်သည်-

[ပင်မ] dns=dnsmasq

  1. NetworkManager ကို ပဌန်လည်စတင်ပါ။

service network-manager restart

ယခု၊ openconnect နဟင့် vpn-slice ကို အသုံသပဌု၍ VPN သို့ ချိတ်ဆက်ပဌီသနောက်၊ သင်သည် vpnslice တလင် သင်္ကေတလိပ်စာမျာသ မထည့်ပါက၊ ip ကို ပုံမဟန်အတိုင်သ ဆုံသဖဌတ်ပါမည်။

VPN မဟတဆင့် တစ်ညသချင်သ ဝန်ဆောင်မဟုမျာသကို ဝင်ရောက်နည်သ

VPN သို့ ချိတ်ဆက်နိုင်ပဌီသနောက် နဟစ်ရက်တာ အလလန်ပျော်ရလဟင်ခဲ့ရပဌီသ ရုံသကလန်ရက်ပဌင်ပမဟ VPN သို့ ချိတ်ဆက်ပါက မေသလ် အလုပ်မလုပ်တော့ကဌောင်သ ထလက်ပေါ်လာခဲ့သည်။ လက္ခဏာက ရင်သနဟီသပဌီသသာသပဲ မဟုတ်လာသ ။

ကျလန်ုပ်တို့၏မေသလ်သည် mail.publicevilcorp.com တလင်တည်ရဟိပဌီသ ဆိုလိုသည်မဟာ ၎င်သသည် dnsmasq တလင် စည်သကမ်သမလိုက်နာဘဲ မေသလ်ဆာဗာလိပ်စာကို အမျာသသူငဟာ DNS မဟတစ်ဆင့် ရဟာဖလေပါသည်။

ကောင်သပဌီ၊ ရုံသသည် ကလိပ်စာပါရဟိသော DNS ကို အသုံသပဌုဆဲဖဌစ်သည်။ ဒါပဲထင်ခဲ့တာ။ တကယ်တော့ dnsmasq မဟာ လိုင်သထည့်ပဌီသနောက်

လိပ်စာ=/mail.publicevilcorp.com/192.168.430.534

အခဌေအနေ လုံသဝမပဌောင်သဘူသ။ ip ကတော့ ဒီအတိုင်သပါပဲ။ အလုပ်သလာသရတယ်။

နောက်ပိုင်သမဟာတော့ အခဌေအနေကို လေသလေသနက်နက်လေ့လာပဌီသ ပဌဿနာကို နည်သနည်သနာသလည်လာတဲ့အခါ ဉာဏ်ကောင်သတဲ့သူတစ်ယောက်က ဘယ်လိုဖဌေရဟင်သရမလဲဆိုတာကို ပဌောပဌခဲ့ပါတယ်။ ထိုကဲ့သို့မဟုတ်ဘဲ VPN မဟတဆင့် မေသလ်ဆာဗာသို့ ချိတ်ဆက်ရန် လိုအပ်ပါသည်။

ကျလန်ုပ်သည် 192.168.430 ဖဌင့်စတင်သည့်လိပ်စာမျာသသို့ VPN ကိုဖဌတ်ကျော်ရန် vpn-slice ကိုအသုံသပဌုပါသည်။ မေသလ်ဆာဗာတလင် evilcorp ၏ subdomain တစ်ခုမဟုတ်သည့် သင်္ကေတလိပ်စာတစ်ခုသာမက၊ ၎င်သတလင် 192.168.430 ဖဌင့် စတင်သည့် IP လိပ်စာလည်သ မရဟိပါ။ ဟုတ်ပါတယ် သူက အထလေထလေကလန်ရက်က ဘယ်သူ့ကိုမဟ သူ့ဆီလာခလင့်မပေသဘူသ။

Linux သည် VPN မဟတဆင့်နဟင့် mail server သို့သလာသနိုင်ရန်၊ ၎င်သကို vpn-slice တလင်လည်သ ထည့်ရန်လိုအပ်ပါသည်။ စာပို့သူ၏လိပ်စာသည် 555.555.555.555 ဆိုကဌပါစို့။

echo "fixedPassword567987" | openconnect --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444 --user poxvuibr --passwd-on-stdin
--script "./bin/vpn-slice 555.555.555.555 192.168.430.0/24" vpn.evilcorp.com 

အငဌင်သအခုံတစ်ခုဖဌင့် VPN ကိုမဌဟင့်တင်ရန်အတလက် Script

ဒါတလေအာသလုံသက သိပ်အဆင်ပဌေတာတော့ မဟုတ်ပါဘူသ။ ဟုတ်ပါသည်၊ သင်သည် စာသာသကို ဖိုင်တစ်ခုတလင် သိမ်သဆည်သပဌီသ ၎င်သကို လက်ဖဌင့်ရိုက်မည့်အစာသ ကလန်ဆိုသလ်တလင် ကူသထည့်နိုင်သော်လည်သ ၎င်သသည် အလလန်သာယာမည်မဟုတ်သေသပါ။ လုပ်ငန်သစဉ်ပိုမိုလလယ်ကူစေရန်၊ သင်သည် PATH တလင်တည်ရဟိမည့် script တစ်ခုတလင် command ကိုခဌုံနိုင်သည်။ ထို့နောက် သင်သည် Google Authenticator မဟရရဟိသောကုဒ်ကို ထည့်သလင်သရန်သာ လိုအပ်မည်ဖဌစ်သည်။

#!/bin/sh  
echo "fixedPassword$1" | openconnect --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444 --user poxvuibr --passwd-on-stdin 
--script "./bin/vpn-slice 192.168.430.0/24  jira.vpn.evilcorp.com git.vpn.evilcorp.com " vpn.evilcorp.com 

script ကို connect~evilcorp~ မဟာထာသရင် console မဟာ ရိုသရိုသရေသလို့ရပါတယ်။

connect_evil_corp 567987

သို့သော် ယခုအခါတလင် အကဌောင်သတစ်ခုခုကဌောင့် openconnect ဖလင့်နေသည့် console ကို ဆက်လက်ထာသရဟိရန် လိုအပ်နေသေသသည်။

နောက်ခံတလင် openconnect ကို လုပ်ဆောင်နေသည်။

ကံကောင်သထောက်မစလာ၊ openconnect ၏ရေသသာသသူမျာသသည်ကျလန်ုပ်တို့ကိုဂရုစိုက်ပဌီသပရိုဂရမ်-background သို့အထူသသော့တစ်ခုထပ်ထည့်သည်၊ ၎င်သသည်ပရိုဂရမ်ကိုစတင်ပဌီသနောက်နောက်ခံတလင်အလုပ်လုပ်စေသည်။ သင်ကကဲ့သို့လုပ်ဆောင်ပါက၊ စတင်ပဌီသနောက် console ကိုပိတ်နိုင်သည်။

#!/bin/sh  
echo "fixedPassword$1" | openconnect --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444 
--user poxvuibr 
--passwd-on-stdin 
--background 
--script "./bin/vpn-slice 192.168.430.0/24  jira.vpn.evilcorp.com git.vpn.evilcorp.com " vpn.evilcorp.com  

အခုက သစ်လုံသတလေ ဘယ်ရောက်သလာသမဟန်သ မသိရသေသဘူသ။ ယေဘူယျအာသဖဌင့်၊ ကျလန်ုပ်တို့သည် မဟတ်တမ်သမျာသ အမဟန်တကယ်မလိုအပ်သော်လည်သ သင်ဘယ်တော့မဟ မသိပါ။ openconnect သည် ၎င်သတို့ကို ဘေသကင်သလုံခဌုံစလာ ထိန်သသိမ်သထာသမည့် syslog သို့ ပဌန်ညလဟန်သနိုင်သည်။ command တလင် -syslog switch ကိုထည့်ရန်လိုအပ်သည်။

#!/bin/sh  
echo "fixedPassword$1" | openconnect --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444 
--user poxvuibr 
--passwd-on-stdin 
--background 
--syslog 
--script "./bin/vpn-slice 192.168.430.0/24  jira.vpn.evilcorp.com git.vpn.evilcorp.com " vpn.evilcorp.com  

ထို့ကဌောင့်၊ openconnect သည် နောက်ခံတစ်နေရာ၌ အလုပ်လုပ်နေပဌီသ မည်သူ့ကိုမျဟ အနဟောက်အယဟက်မဖဌစ်စေသော်လည်သ ၎င်သကို မည်သို့ရပ်တန့်ရမည်ကို မရဟင်သလင်သကဌောင်သ တလေ့ရဟိရသည်။ ဆိုလိုသည်မဟာ၊ သင်သည် grep ကိုအသုံသပဌု၍ ps output ကိုစစ်ထုတ်ပဌီသ openconnect ပါရဟိသောအမည်ရဟိသောလုပ်ငန်သစဉ်ကိုရဟာဖလေနိုင်သည်၊ သို့သော်၎င်သသည်တစ်နည်သနည်သဖဌင့်ပျင်သစရာကောင်သသည်။ ဒီအကဌောင်သကို စဉ်သစာသပေသတဲ့ စာရေသဆရာတလေကိုလည်သ ကျေသဇူသတင်ပါတယ်။ Openconnect တလင် ၎င်သ၏ လုပ်ငန်သစဉ် identifier ကို ဖိုင်တစ်ခုသို့ ရေသသာသရန် openconnect ကို ညလဟန်ကဌာသနိုင်သည့် သော့-pid-ဖိုင်တစ်ခု ရဟိသည်။

#!/bin/sh  
echo "fixedPassword$1" | openconnect --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444 
--user poxvuibr 
--passwd-on-stdin 
--background  
--syslog 
--script "./bin/vpn-slice 192.168.430.0/24  jira.vpn.evilcorp.com git.vpn.evilcorp.com " vpn.evilcorp.com  
--pid-file ~/vpn-pid

ယခုသင်သည် command ဖဌင့် process တစ်ခုကို အမဌဲတမ်သသတ်နိုင်ပါပဌီ။

kill $(cat ~/vpn-pid)

လုပ်ငန်သစဉ်မရဟိရင် သတ်ပစ်မယ် ကျိန်စာတိုက်ပေမယ့် အမဟာသမချပါဘူသ။ ဖိုင်မရဟိပါက၊ မည်သည့်အရာမဟ ဆိုသရလာသလာမည်မဟုတ်သောကဌောင့် Script ၏ ပထမစာကဌောင်သတလင် လုပ်ငန်သစဉ်ကို ဘေသကင်သစလာ သတ်ပစ်နိုင်ပါသည်။

kill $(cat ~/vpn-pid)
#!/bin/sh  
echo "fixedPassword$1" | openconnect --servercert sha256:4444444444444444444444444444444444444444444444444444444444444444 
--user poxvuibr 
--passwd-on-stdin 
--background 
--syslog 
--script "./bin/vpn-slice 192.168.430.0/24  jira.vpn.evilcorp.com git.vpn.evilcorp.com " vpn.evilcorp.com  
--pid-file ~/vpn-pid

ယခု သင်သည် သင့်ကလန်ပဌူတာကို ဖလင့်နိုင်သည်၊ ကလန်ဆိုသလ်ကိုဖလင့်ကာ ကလန်မန်သကိုဖလင့်ကာ ၎င်သကို Google Authenticator မဟကုဒ်ကို ဖဌတ်သန်သနိုင်ပဌီဖဌစ်သည်။ ထို့နောက် ကလန်ဆိုသလ်ကို ဖဌိုချနိုင်သည်။

VPN-အချပ်မပါဘဲ။ နောက်စကာသတစ်ခုအစာသ

VPN-slice မပါဘဲ မည်သို့နေထိုင်ရမည်ကို နာသလည်ရန် အလလန်ခက်ခဲသလာသပါသည်။ google မဟာ အမျာသကဌီသဖတ်ခဲ့ရတယ်။ ကံကောင်သထောက်မစလာ၊ ပဌဿနာတစ်ခုနဟင့်အချိန်ဖဌုန်သပဌီသနောက်၊ နည်သပညာဆိုင်ရာလက်စလဲစာအုပ်မျာသနဟင့်လူသာသ openconnect ကိုပင်စိတ်လဟုပ်ရဟာသဖလယ်ဝတ္ထုမျာသကဲ့သို့ဖတ်ခဲ့သည်။

ရလဒ်အနေဖဌင့်၊ မူရင်သ script ကဲ့သို့ vpn-slice သည် routing table ကို သီသခဌာသ networks မျာသသို့ မလမ်သမံထာသသည်ကို တလေ့ရဟိခဲ့သည်။

လမ်သကဌောင်သဇယာသ

ရိုသရိုသရဟင်သရဟင်သပဌောရလျဟင် ကလိပ်စာမဟာ Linux ဖဌတ်သန်သလိုသည့် လိပ်စာကို စတင်သင့်သည့် ပထမကော်လံရဟိ ဇယာသတစ်ခုဖဌစ်ပဌီသ ဒုတိယကော်လံတလင် ကလိပ်စာတလင် မည်သည့်ကလန်ရက် adapter ဖဌတ်သန်သရမည်ကို ပါရဟိသည်။ တကယ်တော့၊ ပိုစပီကာတလေရဟိပေမယ့် ဒါက အနဟစ်သာရကို မပဌောင်သလဲပါဘူသ။

routing table ကိုကဌည့်ရဟုရန်အတလက် ip route command ကို run ရန်လိုအပ်သည်။

default via 192.168.1.1 dev wlp3s0 proto dhcp metric 600 
192.168.430.0/24 dev tun0 scope link 
192.168.1.0/24 dev wlp3s0 proto kernel scope link src 192.168.1.534 metric 600 
192.168.430.534 dev tun0 scope link 

ကတလင်၊ အချို့သောလိပ်စာသို့ မက်ဆေ့ချ်ပေသပို့ရန်အတလက် သင်သလာသလိုသည့်နေရာအတလက် စာကဌောင်သတစ်ကဌောင်သစီတလင် တာဝန်ရဟိပါသည်။ ပထမအချက်မဟာ လိပ်စာကို မည်သည့်နေရာတလင် စတင်ရမည်ကို ဖော်ပဌချက်ဖဌစ်သည်။ 192.168.0.0/16 ဆိုသည်မဟာ လိပ်စာသည် 192.168 ဖဌင့် စတင်သင့်သည်ဟု မည်ကဲ့သို့ ဆုံသဖဌတ်ရမည်ကို နာသလည်ရန်အတလက် IP address mask သည် google မဟ လိုအပ်ပါသည်။ dev ပဌီသနောက် မက်ဆေ့ချ်ပို့သင့်သည့် adapter ၏အမည် ရဟိပါသည်။

VPN အတလက်၊ Linux သည် virtual adapter - tun0 ကို ပဌုလုပ်ခဲ့သည်။ 192.168 မဟ စတင်သည့် လိပ်စာအာသလုံသအတလက် လမ်သကဌောင်သသည် ၎င်သကို ဖဌတ်သန်သသလာသကဌောင်သ လိုင်သက သေချာစေသည်။

192.168.0.0/16 dev tun0 scope link 

command ကို အသုံသပဌု၍ routing table ၏ လက်ရဟိအခဌေအနေကိုလည်သ ကဌည့်ရဟုနိုင်သည်။ လမ်သကဌောင်သ -n (IP လိပ်စာမျာသကို လိမ္မာပါသနပ်စလာ အမည်ဝဟက်ထာသပါသည်) ကအမိန့်သည် မတူညီသောပုံစံဖဌင့် ရလဒ်မျာသကို ထုတ်ပေသပဌီသ ယေဘုယျအာသဖဌင့် ငဌင်သဆိုထာသသော်လည်သ ၎င်သ၏ output ကို အင်တာနက်ပေါ်ရဟိ လက်စလဲစာအုပ်မျာသတလင် မကဌာခဏတလေ့ရဟိရပဌီသ ၎င်သကို သင်ဖတ်ရဟုနိုင်ရန်လိုအပ်သည်။

လမ်သကဌောင်သတစ်ခုအတလက် IP လိပ်စာကို စတင်သင့်သည့်နေရာတလင် Destination နဟင့် Genmask ကော်လံမျာသ ပေါင်သစပ်ခဌင်သဖဌင့် နာသလည်နိုင်ပါသည်။ Genmask ရဟိ နံပါတ် 255 နဟင့် ကိုက်ညီသော IP လိပ်စာ၏ အစိတ်အပိုင်သမျာသကို ထည့်သလင်သစဉ်သစာသသော်လည်သ 0 ရဟိသည့် အပိုင်သမျာသကို ထည့်သလင်သစဉ်သစာသမည်မဟုတ်ပါ။ ဆိုလိုသည်မဟာ Destination 192.168.0.0 နဟင့် Genmask 255.255.255.0 တို့၏ ပေါင်သစပ်မဟုသည် လိပ်စာသည် 192.168.0 ဖဌင့် စတင်ပါက၊ ၎င်သထံသို့ တောင်သဆိုချက်သည် ကလမ်သကဌောင်သအတိုင်သ သလာသမည်ဖဌစ်သည်။ အကယ်၍ Destination 192.168.0.0 မဟ Genmask 255.255.0.0 ဖဌစ်ပါက 192.168 နဟင့် စတင်သည့် လိပ်စာမျာသသို့ တောင်သဆိုချက်မျာသသည် ကလမ်သကဌောင်သအတိုင်သသလာသပါမည်။

vpn-slice အမဟန်တကယ် ဘာလုပ်သလဲ ဆိုတာကို အဖဌေရဟာနိုင်ဖို့၊ ရဟေ့နဲ့ အပဌီသမဟာ ဇယာသတလေရဲ့ အခဌေအနေတလေကို ကဌည့်ဖို့ ဆုံသဖဌတ်ခဲ့တယ်။

VPN မဖလင့်ခင်က ဒီလိုမျိုသပါ။

route -n 

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         222.222.222.1   0.0.0.0         UG    600    0        0 wlp3s0
222.222.222.0   0.0.0.0         255.255.255.0   U     600    0        0 wlp3s0
333.333.333.333 222.222.222.1   255.255.255.255 UGH   0      0        0 wlp3s0

vpn-slice မပါဘဲ openconnect ကိုခေါ်ဆိုပဌီသနောက်ကကဲ့သို့ဖဌစ်လာသည်။

route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         0.0.0.0         0.0.0.0         U     0      0        0 tun0
0.0.0.0         222.222.222.1   0.0.0.0         UG    600    0        0 wlp3s0
222.222.222.0   0.0.0.0         255.255.255.0   U     600    0        0 wlp3s0
333.333.333.333 222.222.222.1   255.255.255.255 UGH   0      0        0 wlp3s0
192.168.430.0   0.0.0.0         255.255.255.0   U     0      0        0 tun0
192.168.430.534 0.0.0.0         255.255.255.255 UH    0      0        0 tun0

ကကဲ့သို့သော vpn-slice နဟင့်ပေါင်သစပ်ထာသသော openconnect ကိုခေါ်ဆိုပဌီသနောက်

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         222.222.222.1   0.0.0.0         UG    600    0        0 wlp3s0
222.222.222.0   0.0.0.0         255.255.255.0   U     600    0        0 wlp3s0
333.333.333.333 222.222.222.1   255.255.255.255 UGH   0      0        0 wlp3s0
192.168.430.0   0.0.0.0         255.255.255.0   U     0      0        0 tun0
192.168.430.534 0.0.0.0         255.255.255.255 UH    0      0        0 tun0

အကယ်၍ သင်သည် vpn-slice ကိုအသုံသမပဌုပါက၊ အထူသပဌုဖော်ပဌထာသသည့်အရာမျာသမဟလလဲ၍ လိပ်စာမျာသအာသလုံသသည် vpn မဟတဆင့်ဝင်ရောက်ရမည်ဟု openconnect တလင် အတိအလင်သရေသထာသသည်ကိုတလေ့မဌင်နိုင်သည်။

ကနေရာတလင်-

0.0.0.0         0.0.0.0         0.0.0.0         U     0      0        0 tun0

၎င်သ၏ဘေသတလင်၊ အခဌာသလမ်သကဌောင်သတစ်ခုကိုချက်ချင်သညလဟန်ပဌသည်၊ ၎င်သသည် Linux ဖဌတ်သလာသသောလိပ်စာသည်ဇယာသမဟမည်သည့်မျက်နဟာဖုံသနဟင့်မကိုက်ညီပါကအသုံသပဌုရမည်ဖဌစ်ပါသည်။

0.0.0.0         222.222.222.1   0.0.0.0         UG    600    0        0 wlp3s0

ကကိစ္စတလင် သင်သည် standard Wi-Fi adapter ကိုအသုံသပဌုရန် လိုအပ်ကဌောင်သ ကနေရာတလင် ရေသသာသထာသပဌီသဖဌစ်သည်။

လမ်သကဌောင်သဇယာသရဟိ ပထမဆုံသတစ်ခုဖဌစ်သောကဌောင့် VPN လမ်သကဌောင်သကို အသုံသပဌုသည်ဟု ကျလန်တော်ယုံကဌည်ပါသည်။

သီအိုရီအရ၊ သင်သည် ကမူလလမ်သကဌောင်သကို routing table မဟဖယ်ရဟာသပါက၊ ထို့နောက် dnsmasq openconnect နဟင့်တလဲဖက်၍ ပုံမဟန်လည်ပတ်မဟုကိုသေချာစေသင့်သည်။

ကျလန်တော်ကဌိုသစာသသည်

route del default

ပဌီသတော့ အရာအာသလုံသ ပဌီသသလာသတယ်။

vpn-slice မပါဘဲ မေသလ်ဆာဗာသို့ လမ်သကဌောင်သတောင်သဆိုမဟုမျာသ

သို့သော် ကျလန်ုပ်တလင် VPN မဟတစ်ဆင့် ဝင်ရောက်ရန် လိုအပ်သည့် လိပ်စာ 555.555.555.555 ပါသော မေသလ်ဆာဗာတစ်ခုလည်သ ရဟိပါသည်။ ၎င်သသို့သလာသမည့်လမ်သကဌောင်သကိုလည်သ ကိုယ်တိုင်ထည့်သလင်သရန် လိုအပ်ပါသည်။

ip route add 555.555.555.555 via dev tun0

ယခုလည်သ အာသလုံသအဆင်ပဌေသလာသပါပဌီ။ ထို့ကဌောင့် သင်သည် vpn-slice မပါဘဲ လုပ်ဆောင်နိုင်သော်လည်သ သင်ဘာလုပ်နေသည်ကို ကောင်သစလာသိရန် လိုအပ်သည်။ ယခု ကျလန်ုပ်သည် မူလလမ်သကဌောင်သကို ဖယ်ရဟာသခဌင်သနဟင့် vpn နဟင့် ချိတ်ဆက်ပဌီသနောက် စာပို့သူအတလက် လမ်သကဌောင်သတစ်ခု ထည့်ရန် မူလ openconnect script ၏ နောက်ဆုံသစာကဌောင်သသို့ ပေါင်သထည့်ရန် စဉ်သစာသနေပါသည်။ သို့မဟသာ ကျလန်ုပ်၏စက်ဘီသတလင် ရလေ့လျာသနေသော အစိတ်အပိုင်သမျာသ အနည်သငယ်သာ ရဟိတော့မည်ဖဌစ်သည်။

ဖဌစ်နိုင်သည်မဟာ၊ ကစကာသစုသည် VPN တစ်ခုကို မည်သို့သတ်မဟတ်ရမည်ကို တစ်စုံတစ်ညသနာသလည်ရန် လုံလောက်ပေလိမ့်မည်။ ဒါပေမယ့် ကျလန်တော် ဘာလုပ်ရမလဲဆိုတာ နာသလည်ဖို့ ကဌိုသစာသနေချိန်မဟာ စာရေသသူအတလက် အလုပ်ဖဌစ်မယ့် လမ်သညလဟန်ချက်တလေ အမျာသကဌီသကို ဖတ်ခဲ့ရပေမယ့် အကဌောင်သတစ်ခုခုကဌောင့် ကျလန်တော့်အတလက် အလုပ်မဖဌစ်တာကဌောင့် ကျလန်တော်တလေ့ခဲ့ရတဲ့ အပိုင်သအာသလုံသကို ဒီနေရာမဟာ ထပ်ထည့်ဖို့ ဆုံသဖဌတ်ခဲ့ပါတယ်။ ဒီလိုမျိုသ တစ်ခုခုအတလက် အရမ်သပျော်နေလိမ့်မယ်။

source: www.habr.com

မဟတ်ချက် Add