ஒரு எளிய VPN ஐ அமைத்தல் WireGuard மற்றும் ராஸ்பெர்ரி பை ஒரு சேவையகமாக

பின்னர் WireGuard பகுதியாக மாறும் எதிர்கால மையம் Linux 5.6, இந்த VPN-ஐ எனது சாதனத்துடன் எவ்வாறு சிறந்த முறையில் ஒருங்கிணைப்பது என்று பார்க்க முடிவு செய்தேன். ராஸ்பெர்ரி பையில் LTE திசைவி/அணுகல் புள்ளி.

உபகரணங்கள்

  • எல்டிஇ தொகுதி மற்றும் பொது ஐபி முகவரியுடன் ராஸ்பெர்ரி பை 3. இங்கே ஒரு VPN சேவையகம் இருக்கும் (இனிமேல் அது உரையில் அழைக்கப்படுகிறது விளிம்பில் நடப்பவர்)
  • தொலைபேசி ஆன் Androidஅனைத்து தகவல்தொடர்புகளுக்கும் VPN ஐப் பயன்படுத்த வேண்டும்
  • நோட்புக் Linuxநெட்வொர்க்கிற்குள் மட்டுமே VPN ஐப் பயன்படுத்த வேண்டும்

VPN உடன் இணைக்கும் ஒவ்வொரு சாதனமும் மற்ற எல்லா சாதனங்களுடனும் இணைக்க முடியும். எடுத்துக்காட்டாக, இரண்டு சாதனங்களும் VPN நெட்வொர்க்கின் ஒரு பகுதியாக இருந்தால், மடிக்கணினியில் உள்ள வலை சேவையகத்துடன் தொலைபேசியை இணைக்க முடியும். அமைப்பு மிகவும் எளிமையானதாக இருந்தால், டெஸ்க்டாப்பை VPN உடன் இணைப்பது பற்றி நீங்கள் சிந்திக்கலாம் (ஈதர்நெட் வழியாக).

வயர்டு மற்றும் வயர்லெஸ் இணைப்புகள் காலப்போக்கில் குறைவாகவும் பாதுகாப்பாகவும் மாறுவதைக் கருத்தில் கொண்டு (இலக்கு தாக்குதல்கள், KRACK WPA2 கிராக்கிங் தாக்குதல் и WPA3க்கு எதிரான டிராகன்ப்ளட் தாக்குதல்), நான் பயன்படுத்துவதைப் பற்றி தீவிரமாக பரிசீலித்து வருகிறேன். WireGuard எனது எல்லா சாதனங்களுக்கும், அவை எந்தச் சூழலில் இயங்கினாலும் சரி.

மென்பொருள் நிறுவல்

WireGuard அது வழங்குகிறது முன்தொகுக்கப்பட்ட தொகுப்புகள் பெரும்பாலான விநியோகங்களுக்கு Linux, Windows и macOSஇதற்கான விண்ணப்பங்கள் Android மற்றும் iOS ஆகியவை ஆப் ஸ்டோர்கள் மூலம் வழங்கப்படுகின்றன.

என்னிடம் சமீபத்திய ஃபெடோரா உள்ளது Linux 31, நிறுவுவதற்கு முன்பு கையேட்டைப் படிக்க எனக்குச் சோம்பலாக இருந்தது. நான் தொகுப்புகளை மட்டும் கண்டுபிடித்தேன். wireguard-tools, அவற்றை நிறுவி, பின்னர் ஏன் எதுவும் வேலை செய்யவில்லை என்பதைக் கண்டுபிடிக்க முடியவில்லை. மேலதிக விசாரணையில் என்னிடம் தொகுப்பு நிறுவப்படவில்லை என்பது தெரியவந்தது wireguard-dkms (நெட்வொர்க் டிரைவருடன்), ஆனால் அது எனது விநியோகத்தின் களஞ்சியத்தில் இல்லை.

நான் வழிமுறைகளைப் படித்திருந்தால், நான் சரியான நடவடிக்கைகளை எடுத்திருப்பேன்:

$ sudo dnf copr enable jdoss/wireguard
$ sudo dnf install wireguard-dkms wireguard-tools

எனது ராஸ்பெர்ரி பையில் ராஸ்பியன் பஸ்டர் விநியோகம் நிறுவப்பட்டுள்ளது, ஏற்கனவே ஒரு தொகுப்பு உள்ளது wireguard, நிறுவவும்:

$ sudo apt install wireguard

தொலைபேசியில் பேசிக்கொண்டிருக்கிறேன் Android நான் பயன்பாட்டை நிறுவினேன் WireGuard மெ.த.பி.க்குள்ளேயே அதிகாரப்பூர்வ Google App Store பட்டியலிலிருந்து.

விசைகளை நிறுவுதல்

முனைகளை அங்கீகரிக்க Wireguard VPN முனைகளை அங்கீகரிக்க, இது ஒரு எளிய தனிப்பட்ட/பொதுச் சாவித் திட்டத்தைப் பயன்படுத்துகிறது. பின்வரும் கட்டளையின் மூலம் நீங்கள் VPN சாவிகளை எளிதாக உருவாக்கலாம்:

$ wg genkey | tee wg-laptop-private.key |  wg pubkey > wg-laptop-public.key
$ wg genkey | tee wg-server-private.key |  wg pubkey > wg-server-public.key
$ wg genkey | tee wg-mobile-private.key |  wg pubkey > wg-mobile-public.key

இது நமக்கு மூன்று முக்கிய ஜோடிகளை (ஆறு கோப்புகள்) வழங்குகிறது. கட்டமைப்புகளில் உள்ள கோப்புகளை நாங்கள் குறிப்பிட மாட்டோம், ஆனால் உள்ளடக்கங்களை இங்கே நகலெடுக்கவும்: ஒவ்வொரு விசையும் base64 இல் ஒரு வரியாகும்.

VPN சேவையகத்திற்கான உள்ளமைவு கோப்பை உருவாக்குதல் (ராஸ்பெர்ரி பை)

உள்ளமைவு மிகவும் எளிது, நான் பின்வரும் கோப்பை உருவாக்கினேன் /etc/wireguard/wg0.conf:

[Interface]
Address = 10.200.200.1/24
ListenPort = 51820
PrivateKey = <copy private key from wg-server-private.key>
PostUp   = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o wwan0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o wwan0 -j MASQUERADE

[Peer]
# laptop
PublicKey = <copy public key from wg-laptop-public.key>
AllowedIPs = 10.200.200.2/32

[Peer]
# mobile phone
PublicKey = <copy public key from wg-mobile-public.key>
AllowedIPs = 10.200.200.3/32

ஓரிரு குறிப்புகள்:

  • பொருத்தமான இடங்களில் நீங்கள் விசைகளுடன் கோப்புகளிலிருந்து வரிகளைச் செருக வேண்டும்
  • எனது VPN உள் இசைக்குழுவைப் பயன்படுத்துகிறது 10.200.200.0/24
  • அணிகளுக்கு PostUp/PostDown என்னிடம் வெளிப்புற நெட்வொர்க் இடைமுகம் wwan0 உள்ளது, உங்களிடம் வேறு ஒன்று இருக்கலாம் (எடுத்துக்காட்டாக, eth0)

VPN நெட்வொர்க் பின்வரும் கட்டளையுடன் எளிதாக உயர்த்தப்படுகிறது:

$ sudo wg-quick up wg0

ஒரு சிறிய விவரம்: நான் பயன்படுத்திய DNS சேவையகமாக dnsmasq பிணைய இடைமுகத்துடன் இணைக்கப்பட்டுள்ளது br0, சாதனங்களையும் சேர்த்துள்ளேன் wg0 அனுமதிக்கப்பட்ட சாதனங்களின் பட்டியலுக்கு. dnsmasq இல் இது ஒரு புதிய பிணைய இடைமுக வரியை உள்ளமைவு கோப்பில் சேர்ப்பதன் மூலம் செய்யப்படுகிறது /etc/dnsmasq.confஎடுத்துக்காட்டாக:

interface=br0
interface=wg0

கூடுதலாக, UDP கேட்கும் துறைமுகத்திற்கு (51280) போக்குவரத்தை அனுமதிக்க ஒரு iptable விதியைச் சேர்த்துள்ளேன்:

$ sudo iptables -I INPUT -p udp --dport 51820 -j ACCEPT

இப்போது எல்லாம் செயல்படுவதால், VPN சுரங்கப்பாதையின் தானியங்கி வெளியீட்டை அமைக்கலாம்:

$ sudo systemctl enable wg-quick@wg0.service

மடிக்கணினியில் கிளையண்ட் உள்ளமைவு

மடிக்கணினியில் உள்ளமைவு கோப்பை உருவாக்கவும் /etc/wireguard/wg0.conf அதே அமைப்புகளுடன்:

[Interface]
Address = 10.200.200.2/24
PrivateKey = <copy private key from wg-laptop-private.key>

[Peer]
PublicKey = <copy public key from wg-server-public.key>
AllowedIPs = 10.200.200.0/24
Endpoint = edgewalker:51820

கருத்துக்கள்:

  • எட்ஜ்வாக்கருக்குப் பதிலாக பொது ஐபி அல்லது விபிஎன் சர்வர் ஹோஸ்ட்டைக் குறிப்பிட வேண்டும்
  • நிறுவப்பட்டது AllowedIPs மீது 10.200.200.0/24, உள் நெட்வொர்க்கை அணுக மட்டுமே VPN ஐப் பயன்படுத்துகிறோம். மற்ற எல்லா ஐபி முகவரிகள்/சேவையகங்களுக்கான ட்ராஃபிக் “சாதாரண” திறந்த சேனல்கள் வழியாக தொடர்ந்து செல்லும். இது மடிக்கணினியில் முன்பே கட்டமைக்கப்பட்ட DNS சேவையகத்தையும் பயன்படுத்தும்.

சோதனை மற்றும் தானியங்கி துவக்கத்திற்கு நாங்கள் அதே கட்டளைகளைப் பயன்படுத்துகிறோம் wg-quick и systemd:

$ sudo wg-quick up wg0
$ sudo systemctl enable wg-quick@wg0.service

வாடிக்கையாளரை அமைத்தல் Android-தொலைபேசி

தொலைபேசியில் Android நாம் மிகவும் ஒத்த உள்ளமைவு கோப்பை உருவாக்குகிறோம் (அதை என்று அழைப்போம்) mobile.conf):

[Interface]
Address = 10.200.200.3/24
PrivateKey = <copy private key from wg-mobile-private.key>
DNS = 10.200.200.1
        
[Peer]
PublicKey = <copy public key from wg-server-public.key>
AllowedIPs = 0.0.0.0/0
Endpoint = edgewalker:51820

மடிக்கணினியில் உள்ள உள்ளமைவைப் போலல்லாமல், தொலைபேசி எங்கள் VPN சேவையகத்தை DNS சேவையகமாகப் பயன்படுத்த வேண்டும் (வரி DNS), மேலும் அனைத்து போக்குவரத்தையும் VPN சுரங்கப்பாதை வழியாக அனுப்பவும் (AllowedIPs = 0.0.0.0/0).

உங்கள் மொபைல் சாதனத்தில் கோப்பை நகலெடுப்பதற்குப் பதிலாக, அதை QR குறியீட்டாக மாற்றலாம்:

$ sudo apt install qrencode
$ qrencode -t ansiutf8 < mobile.conf

QR குறியீடு ASCII வடிவத்தில் கன்சோலில் காட்டப்படும். அதைச் செயலி மூலமாக ஸ்கேன் செய்யலாம். Android VPN-ஐ தானாகவே VPN டனலை உள்ளமைக்கவும்.

முடிவுக்கு

சரிசெய்தல் WireGuard ஒப்பிடுகையில் வெறுமனே மாயாஜாலமானது OpenVPN.

ஆதாரம்: www.habr.com

DDoS பாதுகாப்பு, VPS VDS சர்வர்கள் கொண்ட தளங்களுக்கு நம்பகமான ஹோஸ்டிங் வாங்கவும் 🔥 DDoS பாதுகாப்புடன் கூடிய நம்பகமான இணையதள ஹோஸ்டிங், VPS, VDS சர்வர்களை வாங்குங்கள் | ProHoster