WireGuard သည် အနာဂတ်၏ အကောင်သဆုံသ VPN ဖဌစ်ပါသလာသ။

WireGuard သည် အနာဂတ်၏ အကောင်သဆုံသ VPN ဖဌစ်ပါသလာသ။

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

လက်ရဟိ VPN ဖဌေရဟင်သချက်မျာသနဟင့် ပဌဿနာမဟာ ၎င်သတို့သည် မဟန်ကန်စလာ စီစဉ်သတ်မဟတ်ရန် ခက်ခဲခဌင်သ၊ ထိန်သသိမ်သရန် စျေသကဌီသပဌီသ မေသခလန်သထုတ်စရာ အရည်အသလေသရဟိသော အမလေအနဟစ်ကုဒ်မျာသ ပဌည့်နဟက်နေခဌင်သ ဖဌစ်သည်။

လလန်ခဲ့သည့် နဟစ်မျာသစလာက ကနေဒါ သတင်သအချက်အလက် လုံခဌုံရေသ အထူသကျလမ်သကျင်သူ Jason A. Donenfeld သည် ၎င်သအတလက် လုံလောက်သည်ဟု ဆုံသဖဌတ်ခဲ့ပဌီသ စတင်လုပ်ဆောင်ခဲ့သည်။ WireGuard. WireGuard သည် ယခုအခါ Linux kernel တလင်ပါဝင်ရန် ပဌင်ဆင်နေပဌီသ ထံမဟ ချီသကျူသမဟုကိုပင် ရရဟိခဲ့ပါသည်။ Linus Torvalds နဟင့် အမေရိကန် အထက်လလဟတ်တော်.

အခဌာသ VPN ဖဌေရဟင်သချက်မျာသထက် WireGuard ၏ အာသသာချက်မျာသ

  • အသုံသပဌုရလလယ်ကူသည်။
  • ခေတ်မီ လျဟို့ဝဟက်စာဝဟက်ကို အသုံသပဌုသည်- ဆူညံသံပရိုတိုကောဘောင်၊ Curve25519၊ ChaCha20၊ Poly1305၊ BLAKE2၊ SipHash24၊ HKDF စသည်ဖဌင့်။
  • ကျစ်လျစ်သော၊ ဖတ်နိုင်သော ကုဒ်၊ အာသနည်သချက်မျာသကို ရဟာဖလေရန် ပိုမိုလလယ်ကူသည်။
  • မဌင့်မာသသောစလမ်သဆောင်ရည်။
  • ရဟင်သလင်သပဌီသ အသေသစိပ်ပါ။ သတ်မဟတ်ချက်.

ငလေရောင်ကျည်ဆန်တစ်လက်ကို ရဟာတလေ့ပဌီလာသ။ OpenVPN နဟင့် IPSec ကို သင်္ဂဌိုဟ်ရန် အချိန်ရဟိပါသလာသ။ ဒါကို ဖဌေရဟင်သဖို့ ဆုံသဖဌတ်လိုက်ပဌီသ တစ်ချိန်တည်သမဟာပဲ ကျလန်တော် လုပ်ခဲ့တယ်။ ကိုယ်ပိုင် VPN ဆာဗာကို အလိုအလျောက် ထည့်သလင်သရန်အတလက် script.

ဘယ်လိုအလုပ်လုပ်တယ်

လည်ပတ်မဟုအခဌေခံမူမျာသကို ကကဲ့သို့ဖော်ပဌနိုင်သည်။

  • WireGuard အင်တာဖေ့စ်ကို ဖန်တီသထာသပဌီသ သီသသန့်သော့နဟင့် IP လိပ်စာကို ၎င်သတလင် သတ်မဟတ်ထာသသည်။ အခဌာသရလယ်တူချင်သမျာသ၏ ဆက်တင်မျာသကို တင်ထာသသည်- ၎င်သတို့၏ အမျာသသူငဟာသော့မျာသ၊ IP လိပ်စာမျာသ စသည်တို့ဖဌစ်သည်။
  • WireGuard အင်တာဖေ့စ်သို့ရောက်ရဟိလာသော IP packet အာသလုံသကို UDP နဟင့် ဖုံသအုပ်ထာသသည်။ ဘေသကင်သစလာ ပို့ဆောင်ပေသခဲ့ပါသည်။ အခဌာသရလယ်တူမျာသ။
  • ဖောက်သည်မျာသသည် ဆက်တင်မျာသတလင် ဆာဗာ၏ အမျာသသူငဟာ IP လိပ်စာကို သတ်မဟတ်ပေသသည်။ မဟန်ကန်စလာ စစ်မဟန်ကဌောင်သသက်သေပဌထာသသော ဒေတာကို ၎င်သတို့ထံမဟ လက်ခံရရဟိသောအခါတလင် သုံသစလဲသူမျာသ၏ ပဌင်ပလိပ်စာမျာသကို ဆာဗာမဟ အလိုအလျောက် အသိအမဟတ်ပဌုပါသည်။
  • ဆာဗာသည် ၎င်သ၏လုပ်ငန်သကို မနဟောင့်ယဟက်ဘဲ အမျာသသူငဟာ IP လိပ်စာကို ပဌောင်သလဲနိုင်သည်။ တစ်ချိန်တည်သမဟာပင်၊ ၎င်သသည် ချိတ်ဆက်ထာသသော ဖောက်သည်မျာသထံ သတိပေသချက်တစ်ခု ပေသပို့မည်ဖဌစ်ပဌီသ ၎င်သတို့သည် ၎င်သတို့၏ ဖလဲ့စည်သမဟုပုံစံကို အလျင်အမဌန် အပ်ဒိတ်လုပ်မည်ဖဌစ်သည်။
  • Routing သဘောတရာသကို အသုံသပဌုသည်။ Cryptokey Routing. WireGuard သည် သက်တူရလယ်တူ၏ အမျာသသူငဟာသော့ကို အခဌေခံ၍ ပက်ကတ်မျာသကို လက်ခံပဌီသ ပေသပို့သည်။ ဆာဗာသည် မဟန်ကန်စလာ စစ်မဟန်ကဌောင်သသက်သေပဌထာသသော ပက်ကတ်ကို ကုဒ်ဝဟက်သောအခါ၊ ၎င်သ၏ src အကလက်ကို အမဟန်ခဌစ်ပါသည်။ ၎င်သသည်ဖလဲ့စည်သပုံနဟင့်ကိုက်ညီပါက allowed-ips စစ်မဟန်သောသက်တူရလယ်တူ၊ ပက်ကတ်ကို WireGuard အင်တာဖေ့စ်မဟလက်ခံရရဟိသည်။ အထလက်ပက်ကတ်ကို ပေသပို့သည့်အခါ၊ သက်ဆိုင်သည့်လုပ်ငန်သစဉ်သည် ဖဌစ်ပေါ်လာသည်- ပက်ကတ်၏ dst အကလက်ကို သိမ်သယူပဌီသ၊ ၎င်သအပေါ် အခဌေခံ၍ သက်ဆိုင်ရာမျိုသတူမျာသကို ရလေသချယ်ထာသကာ ပက်ကတ်ကို ၎င်သ၏သော့ဖဌင့် လက်မဟတ်ထိုသကာ၊ ရလယ်တူ၏သော့ဖဌင့် ကုဒ်ဝဟက်ထာသကာ အဝေသထိန်သမဟတ်တိုင်သို့ ပို့လိုက်သည် .

WireGuard ၏ ပင်မယုတ္တိဗေဒအာသလုံသသည် ကုဒ်လိုင်သပေါင်သ 4ဝဝဝ အောက်သာ ရဟိပဌီသ OpenVPN နဟင့် IPSec တလင် လိုင်သပေါင်သ ရာနဟင့်ချီရဟိသည်။ ခေတ်မီ cryptographic algorithms မျာသကို ပံ့ပိုသရန်၊ Linux kernel တလင် cryptographic API အသစ်တစ်ခု ထည့်သလင်သရန် အဆိုပဌုထာသသည်။ သလယ်. လောလောဆယ်တော့ ဒါက အကဌံကောင်သလာသဆိုတာ ဆလေသနလေသဖို့ ရဟိပါတယ်။

ထလက်နိုင်ရေသ

WireGuard ကို ထိုနေရာတလင် kernel module တစ်ခုအဖဌစ် အကောင်အထည်ဖော်ထာသသောကဌောင့် အမဌင့်ဆုံသစလမ်သဆောင်ရည်အာသသာချက် (OpenVPN နဟင့် IPSec နဟင့် နဟိုင်သယဟဉ်ပါက) Linux စနစ်မျာသတလင် သိသာထင်ရဟာသပါလိမ့်မည်။ ထို့အပဌင်၊ macOS၊ Android၊ iOS၊ FreeBSD နဟင့် OpenBSD တို့ကို ပံ့ပိုသထာသသော်လည်သ ၎င်သတို့တလင် WireGuard သည် နောက်ဆက်တလဲအကျိုသဆက်မျာသနဟင့်အတူ အသုံသပဌုသူနေရာ၌ အလုပ်လုပ်ပါသည်။ မဝေသတော့သောအနာဂတ်တလင် Windows အထောက်အပံ့ကိုထည့်သလင်သရန်မျဟော်လင့်ရသည်။

Benchmark ရလဒ်မျာသနဟင့်အတူ တာဝန်ရဟိသူတဦသက site ကို:

WireGuard သည် အနာဂတ်၏ အကောင်သဆုံသ VPN ဖဌစ်ပါသလာသ။

ကျလန်ုပ်၏အသုံသပဌုမဟုအတလေ့အကဌုံ

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

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

installation လုပ်ငန်သစဉ်ကို အသေသစိတ်ဖော်ပဌထာသသည်။ တရာသဝင်ဝဘ်ဆိုဒ်တလင်၊ အထူသကောင်သမလန်သည်ကို မဟတ်သာသလိုပါသည်။ OpenWRT ပံ့ပိုသမဟု.

ကုဒ်ဝဟက်ခဌင်သသော့မျာသကို utility မဟထုတ်ပေသပါသည်။ wg:

SERVER_PRIVKEY=$( wg genkey )
SERVER_PUBKEY=$( echo $SERVER_PRIVKEY | wg pubkey )
CLIENT_PRIVKEY=$( wg genkey )
CLIENT_PUBKEY=$( echo $CLIENT_PRIVKEY | wg pubkey )

ထို့နောက်၊ သင်သည် server config ကိုဖန်တီသရန်လိုအပ်သည်။ /etc/wireguard/wg0.conf အောက်ပါအကဌောင်သအရာနဟင့်အတူ

[Interface]
Address = 10.9.0.1/24
PrivateKey = $SERVER_PRIVKEY
[Peer]
PublicKey = $CLIENT_PUBKEY
AllowedIPs = 10.9.0.2/32

ဇာတ်ညလဟန်သဖဌင့် လိုဏ်ခေါင်သကို မဌဟင့်တင်ပါ။ wg-quick:

sudo wg-quick up /etc/wireguard/wg0.conf

စနစ်ဖဌင့် စနစ်မျာသတလင် ၎င်သအစာသ ၎င်သကို သင်အသုံသပဌုနိုင်ပါသည်။ sudo systemctl start [email protected].

client စက်တလင် config တစ်ခုဖန်တီသပါ။ /etc/wireguard/wg0.conf:

[Interface]
PrivateKey = $CLIENT_PRIVKEY
Address = 10.9.0.2/24
[Peer]
PublicKey = $SERVER_PUBKEY
AllowedIPs = 0.0.0.0/0
Endpoint = 1.2.3.4:51820 # ВМешМОй IP сервера
PersistentKeepalive = 25 

ထိုနည်သအတိုင်သ ဥမင်လိုဏ်ခေါင်သကို မဌဟင့်ပါ။

sudo wg-quick up /etc/wireguard/wg0.conf

ကျန်ရဟိနေသည်မဟာ client မျာသအင်တာနက်ကိုဝင်ရောက်နိုင်စေရန် NAT ကိုဆာဗာတလင် configure လုပ်ရန်ဖဌစ်ပဌီသ၊ သင်ပဌီသပါပဌီ။

သော့ဖဌန့်ဝေမဟုလုပ်ဆောင်နိုင်စလမ်သကို ဖယ်ရဟာသခဌင်သဖဌင့် ကုဒ်အခဌေခံ၏ အသုံသပဌုရလလယ်ကူမဟုနဟင့် ကျစ်လစ်သိပ်သည်သမဟုကို ရရဟိခဲ့သည်။ ရဟုပ်ထလေသသော လက်မဟတ်စနစ်နဟင့် ကကော်ပိုရိတ် ထိတ်လန့်စရာမျာသ မရဟိပါ။ တိုတောင်သသော ကုဒ်ဝဟက်ခဌင်သသော့မျာသကို SSH သော့မျာသကဲ့သို့ ဖဌန့်ဝေပါသည်။ သို့သော် ၎င်သသည် ပဌဿနာတစ်ခုဖဌစ်သည်- WireGuard သည် အချို့သော လက်ရဟိကလန်ရက်မျာသတလင် အကောင်အထည်ဖော်ရန် လလယ်ကူမည်မဟုတ်ပါ။

အာသနည်သချက်မျာသကဌာသတလင်၊ UDP ပရိုတိုကောကို သယ်ယူပို့ဆောင်ရေသအဖဌစ်သာရရဟိနိုင်သောကဌောင့် WireGuard သည် HTTP proxy မဟတဆင့်အလုပ်လုပ်မည်မဟုတ်ကဌောင်သ သတိပဌုသင့်သည်။ မေသခလန်သပေါ်လာသည်- ၎င်သသည် ပရိုတိုကောကို ရဟုပ်ယဟက်ခတ်ရန် ဖဌစ်နိုင်ပါမည်လာသ။ ဟုတ်ပါတယ်၊ ၎င်သသည် VPN ၏တိုက်ရိုက်အလုပ်မဟုတ်သော်လည်သ၊ ဥပမာအာသဖဌင့်၊ OpenVPN အတလက်၊ အာဏာရဟင်နိုင်ငံမျာသတလင်နေထိုင်သူမျာသအာသအင်တာနက်ကိုအပဌည့်အဝအသုံသပဌုရန်ကူညီပေသသော HTTPS အဖဌစ်သူ့ကိုယ်သူပုံဖျက်ရန်နည်သလမ်သမျာသရဟိသည်။

တလေ့ရဟိချက်မျာသ

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

ကျလန်ုပ်၏ (နဟင့် သင်၏) အချိန်ကို သက်သာစေရန် ကျလန်ုပ် တီထလင်ခဲ့သည်။ WireGuard အလိုအလျောက်တပ်ဆင်သူ. ၎င်သ၏အကူအညီဖဌင့်၊ သင်ကိုယ်တိုင်နဟင့် သင့်သူငယ်ချင်သမျာသအတလက် ကိုယ်ပိုင် VPN တစ်ခုကို ၎င်သနဟင့်ပတ်သက်ပဌီသ နာသမလည်ဘဲ ၎င်သကို သတ်မဟတ်နိုင်သည်။

source: www.habr.com

မဟတ်ချက် Add