ఇంటి రౌటర్ వెనుక PPTP సర్వర్: మొదట 1723 మరియు GRE సరిచేయండి
ఇంటి రౌటర్ వెనుక PPTP నడపండి: TCP 1723, IP ప్రోటోకాల్ 47, పాస్త్రూ చెక్బాక్స్ మరియు MTU గణన, అలాగే L2TP లేదా OpenVPN మెరుగైన ఒప్పందం ఎప్పుడు.
ఇంటి రౌటర్ వెనుక PPTP రెండు సంబంధం లేని విధాలుగా విఫలమవుతుంది, వాటిని కలిపేయడం పూర్తి సాయంత్రాన్ని వృథా చేస్తుంది. ఒక వైఫల్యం ఫార్వార్డింగ్లో ఖాళీ: రౌటర్ TCP 1723 ను దాటిస్తుంది మరియు IP ప్రోటోకాల్ 47 ను విసిరేస్తుంది, కాబట్టి క్లయింట్ లోపం 619 వద్ద నిలిచిపోతుంది. మరొకటి పరిమాణ సమస్య: సొరంగం పైకి వస్తుంది, ధృవీకరించబడుతుంది, ఆపై పూర్తి పరిమాణ ప్యాకెట్ దాటాల్సి వచ్చినప్పుడు గడ్డకట్టుతుంది. వీటిలో మీ వద్ద ఏది ఉందో కనుగొనడమే మొదటి నిజమైన అడుగు; మిగిలినది మీ రౌటర్ ఏమి వ్యక్తపరచగలదో పోలుస్తుంది, ఏ బ్రాండ్ మంచిదో కాదు.
రెండు వాహకాలు, వాటిలో ఒకదానికి మాత్రమే పోర్ట్ ఉంది
PPTP రెండు వాహకాలుగా విడిపోతుంది: TCP 1723 పై నియంత్రణ కనెక్షన్, మరియు విస్తరించిన GRE లో చుట్టబడిన PPP ఫ్రేమ్లు, అంటే IP ప్రోటోకాల్ 47. GRE కి పోర్ట్ నంబర్ లేదు, కాబట్టి పోర్ట్ 1723 ఫార్వార్డ్గా రాసిన నియమం దానిని కవర్ చేయలేదు, వెబ్ ఇంటర్ఫేస్ ఆ ఫీల్డ్కు ఏ పేరు పెట్టినా. ఇంటి రౌటర్ సాధారణంగా ప్రోటోకాల్ నియమానికి బదులుగా PPTP పాస్త్రూ అనే చెక్బాక్స్ ఇస్తుంది, ఆ చెక్బాక్స్ రెండు పనులు చేస్తుంది: ఫైర్వాల్ ద్వారా ప్రోటోకాల్ 47 ను దాటనిస్తుంది, NAT కి GRE ప్రవాహాన్ని ట్రాక్ చేయడం నేర్పుతుంది. లినక్స్ రౌటర్లో ఆ పనులు వేర్వేరు మాడ్యూల్స్ మరియు వేర్వేరు నియమాలు, అందుకే సగం కాన్ఫిగర్ చేసిన పాస్త్రూ కూడా పనిచేసే నియంత్రణ ఛానెల్ను ఇస్తుంది. ఏదైనా మార్చే ముందు ఏ సగం ఉందో కనుగొనండి.
సర్వర్ యొక్క స్వంత ఫైర్వాల్ కూడా రౌటర్ చిరునామా నుండి ప్రోటోకాల్ 47 ను అనుమతించాలి. 1723/tcp మాత్రమే అంగీకరించే హోస్ట్ ఫైర్వాల్ LAN లోపలి నుండి లోపం 619 ను తిరిగి ఉత్పత్తి చేస్తుంది, ఇది విరిగిన ఫార్వార్డింగ్ మరియు విరిగిన హోస్ట్ నియమం ఒకేలా కనిపించేలా చేస్తుంది.
sudo iptables -S FORWARD | grep -i gre
sudo nft list ruleset | grep -i gre
lsmod | grep -E 'nf_conntrack_proto_gre|nf_nat_proto_gre'
మాడ్యూల్స్ లేకపోతే sudo modprobe nf_conntrack_proto_gre nf_nat_proto_gre తో లోడ్ చేసి లోడింగ్ను శాశ్వతం చేయండి, ఎందుకంటే సహాయకుడిని మరచిపోయే రీబూట్ పనిచేసే సొరంగాన్ని మళ్లీ లోపం 619గా మారుస్తుంది. ఫార్వార్డింగ్ నియమం ప్రోటోకాల్ 47 ను సర్వర్ చిరునామా వైపు మాత్రమే అంగీకరించాలి, మొత్తం LAN కాదు. RFC 2637 నిర్వచనం నియంత్రణ మరియు డేటా మార్గాలను వేరు చేస్తుంది, కాబట్టి ఏ ఒక్క పోర్ట్ ఫార్వార్డ్ స్క్రీన్ PPTP ను పూర్తిగా వివరించదు.
పాస్త్రూ చెక్బాక్స్ లేదా స్పష్టమైన ప్రోటోకాల్ నియమం
ఫైర్వాల్ను మాత్రమే తెరిచే పాస్త్రూ చెక్బాక్స్ కాల్ గుర్తింపులను తిరిగి రాసే ALG కంటే సరైన దానికి దగ్గరగా ఉంటుంది. ఫైర్వాల్ సగం అంచనా వేయదగినది, ఎందుకంటే ప్రోటోకాల్ 47 అంగీకరించబడుతుంది లేదా విసిరివేయబడుతుంది, కౌంటర్లు ఏది అని చెబుతాయి. తిరిగి రాసే సగం తయారీదారులు భిన్నంగా ఉండే ప్రదేశం, ఎందుకంటే PPTP కాల్ గుర్తింపులు ప్రతి సొరంగానికి ఉంటాయి మరియు వాటిని సవరించే NAT తాను తాకిన ప్రతి కాల్ను ట్రాక్ చేయాలి. ఒక క్లయింట్ కనెక్ట్ అయి రెండు కాకపోతే, ALG మొదటి అనుమానితుడు.
1723 కోసం గమ్యస్థాన NAT నియమానికి కూడా యాజమాన్య సమస్య ఉంది. పాత నియమం ఇంకా సర్వర్ ఆపేసిన హోస్ట్కు 1723 ను పంపితే, ప్యాకెట్లు మూసిన పోర్ట్పై పడతాయి, రౌటర్ యొక్క స్వంత PPTP సేవ స్పందించడం ఆపేస్తుంది, ఇది ఫైర్వాల్ వైఫల్యంగా చదవబడుతుంది కానీ వాస్తవానికి పాత లక్ష్యం. రెండవదాన్ని జోడించే ముందు నియమాన్ని మరియు దాని గమ్యాన్ని చదవండి. PPTP ను తామే ముగించే రౌటర్లలో WAN నియమం అంతర్నిర్మిత సేవతో పోటీపడుతుంది, కాబట్టి 1723 మరియు ప్రోటోకాల్ 47 కోసం ఒకే యజమానిని ఎంచుకోండి.
ఒకే NAT వెనుక రెండు క్లయింట్లు సాధారణ ఫార్వార్డింగ్ను తెలివైన దాని నుండి వేరు చేసే సందర్భం. కాల్ గుర్తింపులను తిరిగి రాయకుండా ప్రోటోకాల్ 47 ను ఫార్వార్డ్ చేయడం సాధారణంగా వాటిని సరిచేయడానికి ప్రయత్నించే సహాయకుడి కంటే మెరుగ్గా ప్రవర్తిస్తుంది.
రౌటర్ను నిందించే ముందు సొరంగాన్ని కొలవండి
PPTP ఉపయోగకరమైన పేలోడ్ను తగ్గిస్తుంది, ఆ తగ్గుదల గణితం, మర్మం కాదు. ప్రతి సొరంగ ప్యాకెట్ బయటి IP హెడర్, విస్తరించిన GRE హెడర్, PPP హెడర్ మరియు ఎన్క్రిప్షన్తో MPPE హెడర్ మోస్తుంది. మార్గం ఏర్పడిన ఫ్రేమ్ను మోయలేనప్పుడు, చిన్న ప్యాకెట్లు దాటుతాయి, లాగిన్ పూర్తవుతుంది, ఫైల్ బదిలీ లేదా TLS హ్యాండ్షేక్ పూర్తి పరిమాణ ప్యాకెట్ను పంపిన మొదటి సారి సెషన్ ఆగిపోతుంది.
ఊహించడం కాకుండా సంఖ్యను లెక్కించండి. విస్తరించిన GRE కి 8 బైట్లు, PPP కి 4, MPPE కి 4, బయటి IP హెడర్కి 20 ఖర్చవుతాయి, కాబట్టి సొరంగం ఏ పేలోడ్ ముందైనా 36 బైట్లు తింటుంది. 1492 వద్ద ముగిసే PPPoE WAN లో సరిపోయే అతిపెద్ద PPP MTU 1492 మైనస్ 36, అంటే 1456. PPP ఎంపికల్లో mtu మరియు mru ను ఆ విలువకు సెట్ చేసి ఫ్రాగ్మెంటేషన్ లేని పింగ్తో మళ్లీ పరీక్షించండి.
ping -M do -s 1464 198.51.100.7
grep -E '^(mtu|mru)' /etc/ppp/options.pptpd
పింగ్ మార్గాన్ని కొలుస్తుంది, సొరంగాన్ని కాదు: 1464 బైట్ల పేలోడ్ ప్లస్ 28 బైట్ల IP మరియు ICMP హెడర్లు 1492 బైట్ల ఫ్రేమ్ను సరిగ్గా నింపుతాయి. ఆ పింగ్ విఫలమైతే దాటే వరకు సంఖ్యను తగ్గించి ఫలితం నుండి 36 తీసివేయండి. మార్గ పరిమితి కంటే పైన సెట్ చేసిన సొరంగ MTU పరిమాణాన్ని పేర్కొనే ఒక్క లాగ్ లైన్ లేకుండా గడ్డకట్టడాన్ని సృష్టిస్తుంది.
ఒకే రౌటర్లో PPTP, L2TP/IPsec లేదా OpenVPN
ఒకే రౌటర్ మూడు సాధారణ సొరంగాలలో దేనినైనా మోయగలదు, భేదం అది ఏమి వ్యక్తపరచాలి అనేది. PPTP కి రెండు వేర్వేరు పొరల్లో రెండు నియమాలు కావాలి. IPsec పై L2TP కి కీ మార్పిడి కోసం UDP 500 మరియు 4500 కావాలి, NAT-T దానిని మోయకపోతే పేలోడ్ కోసం ప్రోటోకాల్ 50 కావాలి. OpenVPN కి ఒక UDP పోర్ట్ సరిపోతుంది, సహాయకుడు అవసరం లేదు.
| Tunnel | What the router must allow | Practical note |
|---|---|---|
| PPTP | TCP 1723 and IP protocol 47 | Two transports, two rules |
| L2TP/IPsec | UDP 500, UDP 4500, protocol 50 without NAT-T | ESP has no port either |
| OpenVPN | UDP 1194 or a chosen TCP port | Single rule, no helper |
L2TP నిలువు వరుస దానంతట అదే GRE కంటే స్నేహపూర్వకం కాదు. ESP అనేది IP ప్రోటోకాల్ 50 మరియు దానికీ పోర్ట్ లేదు, కాబట్టి ప్రోటోకాల్ 47 తో ఇబ్బంది పడే రౌటర్ అదే కారణంతో ప్రోటోకాల్ 50 తో కూడా ఇబ్బంది పడవచ్చు. ESP ను UDP 4500 లోపల చుట్టడానికి NAT-T ఉంది, రెండు చివరలు మద్దతిస్తే ప్రోటోకాల్ 50 నియమం అనవసరమవుతుంది. అది చివరల లక్షణం, రౌటర్ PPTP పెట్టె లక్షణం కాదు. రెండింటికీ నియమాలు రాసే ముందు క్లయింట్ నిజంగా ఏ ఎన్క్యాప్సులేషన్కు అంగీకరించిందో నిర్ధారించండి.
OpenVPN రౌటర్ వైపు అతి తక్కువ కదిలే భాగాల ఎంపిక. ఒక UDP పోర్ట్, ఒక ఫార్వార్డింగ్, కనెక్షన్-ట్రాకింగ్ సహాయకుడు లేదు, కాల్ గుర్తింపు పునర్లేఖనం లేదు. ఒప్పందం ఏమిటంటే అంతర్నిర్మిత డయలర్కు బదులుగా ఇన్స్టాల్ చేయాల్సిన క్లయింట్, PPTP సంభాషణలో నిలిచి ఉండటానికి ఏకైక కారణం తరచుగా అదే.
ఏమి సరిచేయాలి, ఏమి భర్తీ చేయాలి
ఫార్వార్డింగ్ మరియు MTU సరిచేస్తే పనిచేసే సొరంగం వస్తుంది, ఉంచుకోవాల్సినది కాదు. PPTP యొక్క MSCHAPv2 ప్రామాణీకరణ సంవత్సరాలుగా దాడికి గురవుతోంది, పనిచేసే సొరంగం ఆఫ్లైన్లో తిరిగి పొందగలిగే ఆధారాలను తరలిస్తుంది. రిమోట్ పరికరం L2TP/IPsec లేదా OpenVPN నడపగలిగితే, మరమ్మతును తేదీ ఉన్న తాత్కాలిక చర్యగా పరిగణించండి.
నిర్ణయం రిమోట్ చివర ఏమి మద్దతిస్తుంది మరియు ఏర్పాటు ఎంతకాలం నిలబడాలి అనే దానిపై ఆధారపడి ఉంటుంది. PPTP మాత్రమే మాట్లాడే పాత పరికరం మరమ్మతు పొందుతుంది; క్లయింట్ ఇన్స్టాల్ చేయగలిగినవన్నీ స్థానభ్రంశం చెందుతాయి.
టికెట్ మూసే ముందు క్లయింట్ లాగిన్ కాదు, పెద్ద బదిలీని తట్టుకుంటుందని మరియు రీబూట్ తర్వాత కూడా రౌటర్ తన ప్రోటోకాల్ 47 నియమాన్ని ఉంచుతుందని నిర్ధారించండి. ఒక ఫైల్ కాపీని దాటి తదుపరి ఫర్మ్వేర్ నవీకరణ తర్వాత చనిపోయే సొరంగం ఎప్పుడూ పూర్తి కాలేదు.