WireGuard - Linux-നുള്ള വേഗതയേറിയതും ആധുനികവും സുരക്ഷിതവുമായ VPN ടണൽ


അത്യാധുനിക ക്രിപ്uറ്റോഗ്രഫി ഉപയോഗിക്കുന്ന ആധുനികവും സുരക്ഷിതവും ക്രോസ്-പ്ലാറ്റ്uഫോമും പൊതു-ഉദ്ദേശ്യമുള്ളതുമായ VPN നടപ്പിലാക്കലാണ് WireGuard. ഇത് IPsec-നേക്കാൾ വേഗമേറിയതും ലളിതവും മെലിഞ്ഞതും കൂടുതൽ പ്രവർത്തനക്ഷമവുമാക്കാൻ ലക്ഷ്യമിടുന്നു, കൂടാതെ OpenVPN-നേക്കാൾ കൂടുതൽ പ്രകടനം നടത്താൻ ഇത് ഉദ്ദേശിക്കുന്നു.

ഇത് വിവിധ സാഹചര്യങ്ങളിൽ ഉപയോഗിക്കുന്നതിനായി രൂപകൽപ്പന ചെയ്uതിരിക്കുന്നു, എംബഡഡ് ഇന്റർഫേസുകളിലും പൂർണ്ണമായി ലോഡ് ചെയ്uത ബാക്ക്uബോൺ റൂട്ടറുകളിലും സൂപ്പർ കമ്പ്യൂട്ടറുകളിലും ഒരുപോലെ വിന്യസിക്കാനാകും; കൂടാതെ Linux, Windows, macOS, BSD, iOS, Android ഓപ്പറേറ്റിംഗ് സിസ്റ്റങ്ങളിൽ പ്രവർത്തിക്കുന്നു.

ശുപാർശ ചെയ്uത വായന: ആജീവനാന്ത സബ്uസ്uക്രിപ്uഷനോടുകൂടിയ 13 മികച്ച VPN സേവനങ്ങൾ

ഇത് വളരെ അടിസ്ഥാനപരവും എന്നാൽ ശക്തവുമായ ഒരു ഇന്റർഫേസ് അവതരിപ്പിക്കുന്നു, അത് SSH പോലെ ക്രമീകരിക്കാനും വിന്യസിക്കാനും എളുപ്പമാണ്. ലളിതമായ നെറ്റ്uവർക്ക് ഇന്റർഫേസ്, ക്രിപ്uറ്റോ കീ റൂട്ടിംഗ്, ബിൽറ്റ്-ഇൻ റോമിംഗ്, കണ്ടെയ്uനർ പിന്തുണ എന്നിവ ഇതിന്റെ പ്രധാന സവിശേഷതകളിൽ ഉൾപ്പെടുന്നു.

എഴുതുമ്പോൾ, അത് കനത്ത വികസനത്തിലാണ് എന്നത് ശ്രദ്ധിക്കുക: അതിന്റെ ചില ഭാഗങ്ങൾ സ്ഥിരതയുള്ള 1.0 റിലീസിനായി പ്രവർത്തിക്കുന്നു, മറ്റുള്ളവ ഇതിനകം അവിടെയുണ്ട് (മികച്ച രീതിയിൽ പ്രവർത്തിക്കുന്നു).

ഈ ലേഖനത്തിൽ, രണ്ട് ലിനക്സ് ഹോസ്റ്റുകൾക്കിടയിൽ ഒരു VPN ടണൽ സൃഷ്ടിക്കുന്നതിന് Linux-ൽ WireGuard എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാമെന്നും കോൺഫിഗർ ചെയ്യാമെന്നും നിങ്ങൾ പഠിക്കും.

ഈ ഗൈഡിനായി, ഞങ്ങളുടെ സജ്ജീകരണം (ഹോസ്uറ്റ് നാമവും പൊതു ഐപിയും) ഇപ്രകാരമാണ്:

Node 1 : tecmint-appserver1: 		10.20.20.4
Node 2 : tecmint-dbserver1: 		10.20.20.3

Linux വിതരണങ്ങളിൽ WireGuard എങ്ങനെ ഇൻസ്റ്റാൾ ചെയ്യാം

നിങ്ങളുടെ രണ്ട് നോഡുകളിലേക്കും ലോഗിൻ ചെയ്ത് നിങ്ങളുടെ Linux വിതരണങ്ങൾക്കായി ഇനിപ്പറയുന്ന ഉചിതമായ കമാൻഡ് ഉപയോഗിച്ച് WireGuard ഇൻസ്റ്റാൾ ചെയ്യുക.

$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
$ sudo subscription-manager repos --enable codeready-builder-for-rhel-8-$(arch)-rpms
$ sudo yum copr enable jdoss/wireguard
$ sudo yum install wireguard-dkms wireguard-tools
$ sudo yum install epel-release
$ sudo yum config-manager --set-enabled PowerTools
$ sudo yum copr enable jdoss/wireguard
$ sudo yum install wireguard-dkms wireguard-tools
$ sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
$ sudo curl -o /etc/yum.repos.d/jdoss-wireguard-epel-7.repo https://copr.fedorainfracloud.org/coprs/jdoss/wireguard/repo/epel-7/jdoss-wireguard-epel-7.repo
$ sudo yum install wireguard-dkms wireguard-tools
$ sudo dnf install wireguard-tools
# echo "deb http://deb.debian.org/debian/ unstable main" > /etc/apt/sources.list.d/unstable.list
# printf 'Package: *\nPin: release a=unstable\nPin-Priority: 90\n' > /etc/apt/preferences.d/limit-unstable
# apt update
# apt install wireguard
$ sudo add-apt-repository ppa:wireguard/wireguard
$ sudo apt-get update
$ sudo apt-get install wireguard
$ sudo zypper addrepo -f obs://network:vpn:wireguard wireguard
$ sudo zypper install wireguard-kmp-default wireguard-tools

രണ്ട് ലിനക്സ് ഹോസ്റ്റുകൾക്കിടയിൽ ഒരു WireGuard VPN ടണൽ കോൺഫിഗർ ചെയ്യുന്നു

രണ്ട് നോഡുകളിലും വയർഗാർഡിന്റെ ഇൻസ്റ്റാളേഷൻ പൂർത്തിയാകുമ്പോൾ, രണ്ട് നോഡുകളിലും ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിച്ച് നിങ്ങളുടെ നോഡുകൾ റീബൂട്ട് ചെയ്യാനോ ലിനക്സ് കേർണലിൽ നിന്ന് വയർഗാർഡ് മൊഡ്യൂൾ ചേർക്കാനോ കഴിയും.

$ sudo modprobe wireguard
OR
# modprobe wireguard

അടുത്തതായി, കാണിച്ചിരിക്കുന്നതുപോലെ രണ്ട് നോഡുകളിലും wg യൂട്ടിലിറ്റി ഉപയോഗിച്ച് base64-എൻകോഡ് ചെയ്ത പൊതു, സ്വകാര്യ കീകൾ സൃഷ്ടിക്കുക.

---------- On Node 1 ---------- 
$ umask 077
$ wg genkey >private_appserver1

---------- On Node 2 ----------
$ umask 077
$ wg genkey >private_dbserver1
$ wg pubkey < private_dbserver1

അടുത്തതായി, താഴെ കാണിച്ചിരിക്കുന്നതുപോലെ പിയറുകളിൽ വയർഗാർഡിനായി നിങ്ങൾ ഒരു നെറ്റ്uവർക്ക് ഇന്റർഫേസ് (ഉദാ. wg0) സൃഷ്ടിക്കേണ്ടതുണ്ട്. പിന്നീട് സൃഷ്ടിച്ച പുതിയ നെറ്റ്uവർക്ക് ഇന്റർഫേസിലേക്ക് IP വിലാസങ്ങൾ നൽകുക (ഈ ഗൈഡിനായി, ഞങ്ങൾ നെറ്റ്uവർക്ക് 192.168.10.0/24 ഉപയോഗിക്കും).

---------- On Node 1 ---------- 
$ sudo ip link add dev wg0 type wireguard
$ sudo ip addr add 192.168.10.1/24 dev wg0

---------- On Node 2 ----------
$ sudo ip link add dev wg0 type wireguard
$ sudo ip addr add 192.168.10.2/24 dev wg0

പിയേഴ്സിലും അവരുടെ ഐപി വിലാസങ്ങളിലും അറ്റാച്ച് ചെയ്ത നെറ്റ്uവർക്ക് ഇന്റർഫേസുകൾ കാണുന്നതിന്, ഇനിപ്പറയുന്ന ഐപി കമാൻഡ് ഉപയോഗിക്കുക.

$ ip ad

അടുത്തതായി, wg0 നെറ്റ്uവർക്ക് ഇന്റർഫേസിലേക്ക് ഓരോ പിയറിനുമുള്ള സ്വകാര്യ കീ നൽകുകയും കാണിച്ചിരിക്കുന്നതുപോലെ ഇന്റർഫേസ് കൊണ്ടുവരിക.

---------- On Node 1 ---------- 
$ sudo wg set wg0 private-key ./private_appserver1
$ sudo ip link set wg0 up

---------- On Node 2 ----------
$ sudo wg set wg0 private-key ./private_dbserver1
$ sudo ip link set wg0 up

ഇപ്പോൾ രണ്ട് ലിങ്കുകളും അവയുമായി ബന്ധപ്പെട്ട സ്വകാര്യ കീകൾ ഉള്ളതിനാൽ, പിയറുകളിൽ WireGuard ഇന്റർഫേസുകളുടെ കോൺഫിഗറേഷൻ വീണ്ടെടുക്കുന്നതിന് wg യൂട്ടിലിറ്റി ഒരു ആർഗ്യുമെന്റും ഇല്ലാതെ പ്രവർത്തിപ്പിക്കുക. തുടർന്ന് നിങ്ങളുടെ വയർഗാർഡ് VPN ടണൽ ഇനിപ്പറയുന്ന രീതിയിൽ സൃഷ്ടിക്കുക.

പിയർ (പബ്ലിക് കീ), അനുവദനീയമായ-ips (നെറ്റ്uവർക്ക്/സബ്uനെറ്റ് മാസ്ക്), എൻഡ്uപോയിന്റ് (പബ്ലിക് ഐപി: പോർട്ട്) എന്നിവ വിപരീത പിയറുടേതാണ്.

----------  On Node1 (Use the IPs and Public Key of Node 2) ---------- 
$ sudo wg
$ sudo wg set wg0 peer MDaeWgZVULXP4gvOj4UmN7bW/uniQeBionqJyzEzSC0= allowed-ips 192.168.10.0/24  endpoint  10.20.20.3:54371

----------  On Node2 (Use the IPs and Public Key of Node 1) ----------
$ sudo wg
$ sudo wg set wg0 peer 6yNLmpkbfsL2ijx7z996ZHl2bNFz9Psp9V6BhoHjvmk= allowed-ips 192.168.10.0/24 endpoint  10.20.20.4:42930

Linux സിസ്റ്റങ്ങൾക്കിടയിൽ WireGuard VPN ടണൽ പരിശോധിക്കുന്നു

വയർഗാർഡ് വിപിഎൻ ടണൽ സൃഷ്ടിച്ചുകഴിഞ്ഞാൽ, വയർഗാർഡ് നെറ്റ്uവർക്ക് ഇന്റർഫേസിന്റെ വിലാസം ഉപയോഗിച്ച് എതിർ പിയറിനെ പിംഗ് ചെയ്യുക. കാണിച്ചിരിക്കുന്നതുപോലെ സമപ്രായക്കാർക്കിടയിൽ ഒരു ഹാൻuഡ്uഷേക്ക് സ്ഥിരീകരിക്കുന്നതിന് wg യൂട്ടിലിറ്റി ഒരിക്കൽ കൂടി പ്രവർത്തിപ്പിക്കുക.

---------- On Node 1 ----------
$ ping 192.168.10.2
$ sudo wg

---------- On Node 2 ----------
$ ping 192.168.10.1
$ sudo wg

തൽക്കാലം അത്രമാത്രം! ഭാവിയിലേക്കുള്ള ആധുനികവും സുരക്ഷിതവും ലളിതവും എന്നാൽ ശക്തവും കോൺഫിഗർ ചെയ്യാൻ എളുപ്പമുള്ളതുമായ VPN പരിഹാരമാണ് WireGuard. ഇത് വൻതോതിലുള്ള വികസനത്തിന് വിധേയമാണ്, അതിനാൽ ജോലികൾ പുരോഗമിക്കുന്നു. WireGuard ഹോംപേജിൽ നിന്ന് അതിന്റെ ആന്തരിക ആന്തരിക പ്രവർത്തനങ്ങളെക്കുറിച്ചും മറ്റ് കോൺഫിഗറേഷൻ ഓപ്ഷനുകളെക്കുറിച്ചും കൂടുതൽ വിവരങ്ങൾ നിങ്ങൾക്ക് ലഭിക്കും.