WireGuard భవిష్యత్తులో గొప్ప VPN కాదా?

WireGuard భవిష్యత్తులో గొప్ప VPN కాదా?

VPN ఇకపై గడ్డం సిస్టమ్ నిర్వాహకుల యొక్క కొన్ని అన్యదేశ సాధనం కానప్పుడు సమయం ఆసన్నమైంది. వినియోగదారులకు వేర్వేరు పనులు ఉన్నాయి, కానీ వాస్తవం ఏమిటంటే ప్రతి ఒక్కరికీ VPN అవసరం.

ప్రస్తుత VPN సొల్యూషన్స్‌తో ఉన్న సమస్య ఏమిటంటే అవి సరిగ్గా కాన్ఫిగర్ చేయడం కష్టం, నిర్వహించడం ఖరీదైనది మరియు సందేహాస్పద నాణ్యత కలిగిన లెగసీ కోడ్‌తో నిండి ఉన్నాయి.

చాలా సంవత్సరాల క్రితం, కెనడియన్ ఇన్ఫర్మేషన్ సెక్యూరిటీ స్పెషలిస్ట్ జాసన్ ఎ. డోనెన్‌ఫెల్డ్ తనకు అది తగినంత ఉందని నిర్ణయించుకుని, పని చేయడం ప్రారంభించాడు. WireGuard. WireGuard ఇప్పుడు Linux కెర్నల్‌లో చేర్చడానికి సిద్ధం చేయబడుతోంది మరియు నుండి కూడా ప్రశంసలు అందుకుంది లినస్ టోర్వాల్డ్స్ మరియు లో US సెనేట్.

ఇతర VPN పరిష్కారాల కంటే WireGuard యొక్క క్లెయిమ్ చేయబడిన ప్రయోజనాలు:

  • ఉపయోగించడానికి సులభం.
  • ఆధునిక క్రిప్టోగ్రఫీని ఉపయోగిస్తుంది: నాయిస్ ప్రోటోకాల్ ఫ్రేమ్‌వర్క్, Curve25519, ChaCha20, Poly1305, BLAKE2, SipHash24, HKDF, మొదలైనవి.
  • కాంపాక్ట్, చదవగలిగే కోడ్, దుర్బలత్వాలను పరిశోధించడం సులభం.
  • అధిక పనితీరు.
  • స్పష్టంగా మరియు వివరంగా వివరణ.

వెండి బుల్లెట్ దొరికిందా? OpenVPN మరియు IPSecని పాతిపెట్టే సమయం వచ్చిందా? నేను దీన్ని ఎదుర్కోవాలని నిర్ణయించుకున్నాను మరియు అదే సమయంలో నేను చేసాను వ్యక్తిగత VPN సర్వర్‌ని స్వయంచాలకంగా ఇన్‌స్టాల్ చేయడానికి స్క్రిప్ట్.

పని సూత్రాలు

ఆపరేటింగ్ సూత్రాలను ఈ క్రింది విధంగా వివరించవచ్చు:

  • WireGuard ఇంటర్‌ఫేస్ సృష్టించబడింది మరియు దానికి ప్రైవేట్ కీ మరియు IP చిరునామా కేటాయించబడతాయి. ఇతర సహచరుల సెట్టింగ్‌లు లోడ్ చేయబడ్డాయి: వారి పబ్లిక్ కీలు, IP చిరునామాలు మొదలైనవి.
  • WireGuard ఇంటర్‌ఫేస్‌కి వచ్చే అన్ని IP ప్యాకెట్‌లు UDPలో మరియు సురక్షితంగా పంపిణీ చేయబడింది ఇతర సహచరులు.
  • క్లయింట్లు సెట్టింగ్‌లలో సర్వర్ యొక్క పబ్లిక్ IP చిరునామాను పేర్కొంటారు. క్లయింట్‌ల నుండి సరిగ్గా ప్రామాణీకరించబడిన డేటా స్వీకరించబడినప్పుడు వారి బాహ్య చిరునామాలను సర్వర్ స్వయంచాలకంగా గుర్తిస్తుంది.
  • సర్వర్ తన పనికి అంతరాయం కలిగించకుండా పబ్లిక్ IP చిరునామాను మార్చగలదు. అదే సమయంలో, ఇది కనెక్ట్ చేయబడిన క్లయింట్‌లకు హెచ్చరికను పంపుతుంది మరియు వారు ఫ్లైలో వారి కాన్ఫిగరేషన్‌ను అప్‌డేట్ చేస్తారు.
  • రూటింగ్ అనే కాన్సెప్ట్ ఉపయోగించబడుతుంది క్రిప్టోకీ రూటింగ్. WireGuard పీర్ పబ్లిక్ కీ ఆధారంగా ప్యాకెట్‌లను అంగీకరిస్తుంది మరియు పంపుతుంది. సర్వర్ సరిగ్గా ప్రమాణీకరించబడిన ప్యాకెట్‌ను డీక్రిప్ట్ చేసినప్పుడు, దాని src ఫీల్డ్ తనిఖీ చేయబడుతుంది. ఇది కాన్ఫిగరేషన్‌తో సరిపోలితే allowed-ips ప్రామాణీకరించబడిన పీర్, ప్యాకెట్ వైర్‌గార్డ్ ఇంటర్‌ఫేస్ ద్వారా స్వీకరించబడింది. అవుట్‌గోయింగ్ ప్యాకెట్‌ను పంపేటప్పుడు, సంబంధిత విధానం జరుగుతుంది: ప్యాకెట్ యొక్క dst ఫీల్డ్ తీసుకోబడుతుంది మరియు దాని ఆధారంగా సంబంధిత పీర్ ఎంపిక చేయబడుతుంది, ప్యాకెట్ దాని కీతో సంతకం చేయబడుతుంది, పీర్ కీతో గుప్తీకరించబడింది మరియు రిమోట్ ఎండ్ పాయింట్‌కి పంపబడుతుంది. .

WireGuard యొక్క అన్ని కోర్ లాజిక్‌లు 4 వేల కంటే తక్కువ కోడ్‌లను తీసుకుంటాయి, అయితే OpenVPN మరియు IPSec వందల వేల లైన్‌లను కలిగి ఉంటాయి. ఆధునిక క్రిప్టోగ్రాఫిక్ అల్గారిథమ్‌లకు మద్దతు ఇవ్వడానికి, Linux కెర్నల్‌లో కొత్త క్రిప్టోగ్రాఫిక్ APIని చేర్చాలని ప్రతిపాదించబడింది. జింక్. ఇది మంచి ఆలోచనేనా అనే చర్చ ప్రస్తుతం సాగుతోంది.

ఉత్పాదకత

WireGuard కెర్నల్ మాడ్యూల్‌గా అమలు చేయబడినందున, గరిష్ట పనితీరు ప్రయోజనం (OpenVPN మరియు IPSecతో పోలిస్తే) Linux సిస్టమ్‌లలో గమనించవచ్చు. అదనంగా, macOS, Android, iOS, FreeBSD మరియు OpenBSDలకు మద్దతు ఉంది, అయితే వాటిలో WireGuard అన్ని తదుపరి పనితీరు పరిణామాలతో యూజర్‌స్పేస్‌లో నడుస్తుంది. సమీప భవిష్యత్తులో Windows మద్దతు జోడించబడుతుందని భావిస్తున్నారు.

దీనితో బెంచ్‌మార్క్ ఫలితాలు అధికారిక సైట్:

WireGuard భవిష్యత్తులో గొప్ప VPN కాదా?

నా వాడుక అనుభవం

నేను VPN నిపుణుడిని కాదు. నేను ఒకసారి OpenVPNని మాన్యువల్‌గా సెటప్ చేసాను మరియు ఇది చాలా శ్రమతో కూడుకున్నది మరియు నేను IPSecని కూడా ప్రయత్నించలేదు. తీసుకోవాల్సిన నిర్ణయాలు చాలా ఉన్నాయి, మిమ్మల్ని మీరు పాదంలో కాల్చుకోవడం చాలా సులభం. అందువల్ల, సర్వర్‌ను కాన్ఫిగర్ చేయడానికి నేను ఎల్లప్పుడూ రెడీమేడ్ స్క్రిప్ట్‌లను ఉపయోగించాను.

కాబట్టి, WireGuard, నా దృష్టికోణం నుండి, సాధారణంగా వినియోగదారుకు అనువైనది. అన్ని తక్కువ-స్థాయి నిర్ణయాలు స్పెసిఫికేషన్‌లో తీసుకోబడతాయి, కాబట్టి సాధారణ VPN అవస్థాపనను సిద్ధం చేసే ప్రక్రియ కొన్ని నిమిషాలు మాత్రమే పడుతుంది. కాన్ఫిగరేషన్‌లో మోసం చేయడం దాదాపు అసాధ్యం.

సంస్థాపనా విధానం వివరంగా వివరించబడింది అధికారిక వెబ్‌సైట్‌లో, నేను అద్భుతమైన వాటిని విడిగా గమనించాలనుకుంటున్నాను OpenWRT మద్దతు.

ఎన్క్రిప్షన్ కీలు యుటిలిటీ ద్వారా ఉత్పత్తి చేయబడతాయి wg:

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

తరువాత, మీరు సర్వర్ కాన్ఫిగరేషన్‌ను సృష్టించాలి /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

systemd ఉన్న సిస్టమ్‌లలో మీరు దీన్ని బదులుగా ఉపయోగించవచ్చు sudo systemctl start [email protected].

క్లయింట్ మెషీన్‌లో, కాన్ఫిగరేషన్‌ను సృష్టించండి /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

క్లయింట్‌లు ఇంటర్నెట్‌ని యాక్సెస్ చేయడానికి సర్వర్‌లో NATని కాన్ఫిగర్ చేయడం మాత్రమే మిగిలి ఉంది మరియు మీరు పూర్తి చేసారు!

కీ డిస్ట్రిబ్యూషన్ ఫంక్షనాలిటీని తొలగించడం ద్వారా కోడ్ బేస్ యొక్క ఈ సౌలభ్యం మరియు కాంపాక్ట్‌నెస్ సాధించబడ్డాయి. సంక్లిష్టమైన సర్టిఫికేట్ సిస్టమ్ లేదు మరియు ఈ కార్పొరేట్ హర్రర్; చిన్న ఎన్‌క్రిప్షన్ కీలు SSH కీల వలె పంపిణీ చేయబడతాయి. కానీ ఇది ఒక సమస్యను కలిగిస్తుంది: WireGuard ఇప్పటికే ఉన్న కొన్ని నెట్‌వర్క్‌లలో అమలు చేయడం అంత సులభం కాదు.

ప్రతికూలతలలో, వైర్‌గార్డ్ HTTP ప్రాక్సీ ద్వారా పనిచేయదని గమనించాలి, ఎందుకంటే UDP ప్రోటోకాల్ మాత్రమే రవాణాగా అందుబాటులో ఉంది. ప్రశ్న తలెత్తుతుంది: ప్రోటోకాల్‌ను అస్పష్టం చేయడం సాధ్యమేనా? వాస్తవానికి, ఇది VPN యొక్క ప్రత్యక్ష పని కాదు, కానీ OpenVPN కోసం, ఉదాహరణకు, HTTPS వలె మారువేషంలో మార్గాలు ఉన్నాయి, ఇది నిరంకుశ దేశాల నివాసితులు పూర్తిగా ఇంటర్నెట్‌ని ఉపయోగించడానికి సహాయపడుతుంది.

కనుగొన్న

సంగ్రహంగా చెప్పాలంటే, ఇది చాలా ఆసక్తికరమైన మరియు మంచి ప్రాజెక్ట్, మీరు దీన్ని ఇప్పటికే వ్యక్తిగత సర్వర్‌లలో ఉపయోగించవచ్చు. ఏం లాభం? Linux సిస్టమ్స్‌లో అధిక పనితీరు, సెటప్ సౌలభ్యం మరియు మద్దతు, కాంపాక్ట్ మరియు రీడబుల్ కోడ్ బేస్. అయినప్పటికీ, వైర్‌గార్డ్‌కు సంక్లిష్టమైన అవస్థాపనను బదిలీ చేయడానికి ఇది చాలా తొందరగా ఉంది; Linux కెర్నల్‌లో దాని చేరిక కోసం వేచి ఉండటం విలువ.

నా (మరియు మీ) సమయాన్ని ఆదా చేయడానికి, నేను అభివృద్ధి చేసాను WireGuard ఆటోమేటిక్ ఇన్‌స్టాలర్. దాని సహాయంతో, మీరు దాని గురించి ఏమీ అర్థం చేసుకోకుండానే మీ కోసం మరియు మీ స్నేహితుల కోసం వ్యక్తిగత VPNని సెటప్ చేయవచ్చు.

మూలం: www.habr.com

ఒక వ్యాఖ్యను జోడించండి