TL; DR: నేను వైర్గార్డ్ని VPSలో ఇన్స్టాల్ చేసి, OpenWRTలో నా హోమ్ రూటర్ నుండి దానికి కనెక్ట్ చేసి, నా ఫోన్ నుండి నా హోమ్ సబ్నెట్ని యాక్సెస్ చేస్తాను.
మీరు మీ వ్యక్తిగత అవస్థాపనను హోమ్ సర్వర్లో ఉంచినట్లయితే లేదా ఇంట్లో అనేక IP-నియంత్రిత పరికరాలను కలిగి ఉంటే, మీరు బహుశా వాటిని పని నుండి, బస్సు, రైలు మరియు మెట్రో నుండి యాక్సెస్ చేయాలనుకుంటున్నారు. చాలా తరచుగా, ఇలాంటి పనుల కోసం, ప్రొవైడర్ నుండి IP కొనుగోలు చేయబడుతుంది, దాని తర్వాత ప్రతి సేవ యొక్క పోర్ట్లు బయటికి ఫార్వార్డ్ చేయబడతాయి.
బదులుగా, నేను నా హోమ్ LANకి యాక్సెస్తో VPNని సెటప్ చేసాను. ఈ పరిష్కారం యొక్క ప్రయోజనాలు:
- పారదర్శకత: నేను ఎట్టి పరిస్థితుల్లోనూ ఇంట్లోనే ఉన్నాను.
- సులభం: దీన్ని సెట్ చేసి మరచిపోండి, ప్రతి పోర్ట్ను ఫార్వార్డ్ చేయడం గురించి ఆలోచించాల్సిన అవసరం లేదు.
- ధర: నాకు ఇప్పటికే VPS ఉంది; అటువంటి పనుల కోసం, వనరుల పరంగా ఆధునిక VPN దాదాపు ఉచితం.
- భద్రత: ఏదీ బయటపడదు, మీరు పాస్వర్డ్ లేకుండా MongoDBని వదిలివేయవచ్చు మరియు మీ డేటాను ఎవరూ దొంగిలించరు.
ఎప్పటిలాగే, ప్రతికూలతలు ఉన్నాయి. మొదట, మీరు సర్వర్ వైపుతో సహా ప్రతి క్లయింట్ను విడిగా కాన్ఫిగర్ చేయాలి. మీరు సేవలను యాక్సెస్ చేయాలనుకుంటున్న పెద్ద సంఖ్యలో పరికరాలను కలిగి ఉంటే అది అసౌకర్యంగా ఉంటుంది. రెండవది, మీరు పనిలో అదే పరిధితో LANని కలిగి ఉండవచ్చు - మీరు ఈ సమస్యను పరిష్కరించాలి.
మాకు అవసరం:
- VPS (డెబియన్ 10లో నా విషయంలో).
- OpenWRT రూటర్.
- టెలిఫోన్.
- పరీక్ష కోసం కొంత వెబ్ సేవతో హోమ్ సర్వర్.
- స్ట్రెయిట్ చేతులు.
నేను ఉపయోగించే VPN సాంకేతికత Wireguard. ఈ పరిష్కారం బలాలు మరియు బలహీనతలను కూడా కలిగి ఉంది, నేను వాటిని వివరించను. VPN కోసం నేను సబ్నెట్ని ఉపయోగిస్తాను 192.168.99.0/24
, మరియు నా ఇంట్లో 192.168.0.0/24
.
VPS కాన్ఫిగరేషన్
నెలకు 30 రూబిళ్లు కోసం అత్యంత దయనీయమైన VPS కూడా వ్యాపారం కోసం సరిపోతుంది, మీరు అదృష్టవంతులైతే ఒకటి.
నేను సర్వర్లోని అన్ని కార్యకలాపాలను క్లీన్ మెషీన్లో రూట్గా నిర్వహిస్తాను; అవసరమైతే, `sudo`ని జోడించి, సూచనలను స్వీకరించండి.
వైర్గార్డ్ను స్టేబుల్లోకి తీసుకురావడానికి సమయం లేదు, కాబట్టి నేను `ఆప్ట్ ఎడిట్-సోర్స్`ని రన్ చేసి, ఫైల్ చివరిలో రెండు లైన్లలో బ్యాక్పోర్ట్లను జోడించాను:
deb http://deb.debian.org/debian/ buster-backports main
# deb-src http://deb.debian.org/debian/ buster-backports main
ప్యాకేజీ సాధారణ పద్ధతిలో ఇన్స్టాల్ చేయబడింది: apt update && apt install wireguard
.
తరువాత, మేము ఒక కీ జతని రూపొందిస్తాము: wg genkey | tee /etc/wireguard/vps.private | wg pubkey | tee /etc/wireguard/vps.public
. సర్క్యూట్లో పాల్గొనే ప్రతి పరికరం కోసం ఈ ఆపరేషన్ను రెండుసార్లు పునరావృతం చేయండి. మరొక పరికరం కోసం కీ ఫైల్లకు మార్గాన్ని మార్చండి మరియు ప్రైవేట్ కీల భద్రత గురించి మర్చిపోవద్దు.
ఇప్పుడు మేము ఆకృతీకరణను సిద్ధం చేస్తాము. ఫైల్ చేయడానికి /etc/wireguard/wg0.conf
config ఉంచబడింది:
[Interface]
Address = 192.168.99.1/24
ListenPort = 57953
PrivateKey = 0JxJPUHz879NenyujROVK0YTzfpmzNtbXmFwItRKdHs=
[Peer] # OpenWRT
PublicKey = 36MMksSoKVsPYv9eyWUKPGMkEs3HS+8yIUqMV8F+JGw=
AllowedIPs = 192.168.99.2/32,192.168.0.0/24
[Peer] # Smartphone
PublicKey = /vMiDxeUHqs40BbMfusB6fZhd+i5CIPHnfirr5m3TTI=
AllowedIPs = 192.168.99.3/32
విభాగంలో [Interface]
యంత్రం యొక్క సెట్టింగులు సూచించబడతాయి మరియు ఇన్ [Peer]
— దానికి కనెక్ట్ చేసే వారి కోసం సెట్టింగ్లు. IN AllowedIPs
కామాలతో వేరు చేయబడి, సంబంధిత పీర్కు మళ్లించబడే సబ్నెట్లు పేర్కొనబడ్డాయి. దీని కారణంగా, VPN సబ్నెట్లోని “క్లయింట్” పరికరాల సహచరులు తప్పనిసరిగా మాస్క్ని కలిగి ఉండాలి /32
, మిగతావన్నీ సర్వర్ ద్వారా మళ్లించబడతాయి. హోమ్ నెట్వర్క్ OpenWRT ద్వారా మళ్లించబడుతుంది కాబట్టి, ఇన్ AllowedIPs
మేము సంబంధిత పీర్ యొక్క హోమ్ సబ్నెట్ను జోడిస్తాము. IN PrivateKey
и PublicKey
VPS కోసం రూపొందించబడిన ప్రైవేట్ కీని మరియు తదనుగుణంగా పీర్ల పబ్లిక్ కీలను విడదీయండి.
VPSలో, ఇంటర్ఫేస్ను తీసుకువచ్చే కమాండ్ను అమలు చేయడం మరియు దానిని ఆటోరన్కి జోడించడం మాత్రమే మిగిలి ఉంది: systemctl enable --now wg-quick@wg0
. ప్రస్తుత కనెక్షన్ స్థితిని ఆదేశంతో తనిఖీ చేయవచ్చు wg
.
OpenWRT కాన్ఫిగరేషన్
ఈ దశకు కావలసినవన్నీ లూసీ మాడ్యూల్లో ఉన్నాయి (OpenWRT వెబ్ ఇంటర్ఫేస్). లాగిన్ చేసి, సిస్టమ్ మెనులో సాఫ్ట్వేర్ ట్యాబ్ను తెరవండి. OpenWRT మెషీన్లో కాష్ను నిల్వ చేయదు, కాబట్టి మీరు ఆకుపచ్చ నవీకరణ జాబితాల బటన్పై క్లిక్ చేయడం ద్వారా అందుబాటులో ఉన్న ప్యాకేజీల జాబితాను నవీకరించాలి. పూర్తయిన తర్వాత, ఫిల్టర్లోకి వెళ్లండి luci-app-wireguard
మరియు, ఒక అందమైన డిపెండెన్సీ చెట్టుతో విండోను చూస్తూ, ఈ ప్యాకేజీని ఇన్స్టాల్ చేయండి.
నెట్వర్క్ల మెనులో, ఇంటర్ఫేస్లను ఎంచుకుని, ఇప్పటికే ఉన్న వాటి జాబితా క్రింద ఉన్న కొత్త ఇంటర్ఫేస్ని జోడించు ఆకుపచ్చ బటన్ను క్లిక్ చేయండి. పేరు నమోదు చేసిన తర్వాత (కూడా wg0
నా విషయంలో) మరియు WireGuard VPN ప్రోటోకాల్ను ఎంచుకుంటే, నాలుగు ట్యాబ్లతో కూడిన సెట్టింగ్ల ఫారమ్ తెరవబడుతుంది.
సాధారణ సెట్టింగ్ల ట్యాబ్లో, మీరు సబ్నెట్తో పాటు OpenWRT కోసం సిద్ధం చేసిన ప్రైవేట్ కీ మరియు IP చిరునామాను నమోదు చేయాలి.
ఫైర్వాల్ సెట్టింగ్ల ట్యాబ్లో, ఇంటర్ఫేస్ను స్థానిక నెట్వర్క్కు కనెక్ట్ చేయండి. ఈ విధంగా, VPN నుండి కనెక్షన్లు ఉచితంగా స్థానిక ప్రాంతంలోకి ప్రవేశిస్తాయి.
పీర్స్ ట్యాబ్లో, ఒకే బటన్ను క్లిక్ చేయండి, దాని తర్వాత మీరు నవీకరించబడిన ఫారమ్లో VPS సర్వర్ డేటాను పూరించండి: పబ్లిక్ కీ, అనుమతించబడిన IPలు (మీరు మొత్తం VPN సబ్నెట్ను సర్వర్కి మార్చాలి). ఎండ్పాయింట్ హోస్ట్ మరియు ఎండ్పాయింట్ పోర్ట్లో, వరుసగా ListenPort డైరెక్టివ్లో గతంలో పేర్కొన్న పోర్ట్తో VPS యొక్క IP చిరునామాను నమోదు చేయండి. సృష్టించబడే మార్గాల కోసం రూట్ అనుమతించబడిన IPలను తనిఖీ చేయండి. మరియు పెర్సిస్టెంట్ కీప్ అలైవ్ని పూరించడాన్ని నిర్ధారించుకోండి, లేకపోతే VPS నుండి రూటర్కు సొరంగం NAT వెనుక ఉంటే విరిగిపోతుంది.
దీని తరువాత, మీరు సెట్టింగులను సేవ్ చేయవచ్చు, ఆపై ఇంటర్ఫేస్ల జాబితాతో పేజీలో, సేవ్ చేసి వర్తించు క్లిక్ చేయండి. అవసరమైతే, రీస్టార్ట్ బటన్తో ఇంటర్ఫేస్ను స్పష్టంగా ప్రారంభించండి.
స్మార్ట్ఫోన్ను సెటప్ చేస్తోంది
మీకు వైర్గార్డ్ క్లయింట్ అవసరం, ఇది అందుబాటులో ఉంది
ఫోన్ నుండి బోల్డ్ స్క్రీన్షాట్
మూలలో ఉన్న ఫ్లాపీ డిస్క్పై క్లిక్ చేసి, దాన్ని ఆన్ చేసి...
పూర్తయింది
ఇప్పుడు మీరు ఇంటి పర్యవేక్షణను యాక్సెస్ చేయవచ్చు, రూటర్ సెట్టింగ్లను మార్చవచ్చు లేదా IP స్థాయిలో ఏదైనా చేయవచ్చు.
స్థానిక ప్రాంతం నుండి స్క్రీన్షాట్లు
మూలం: www.habr.com