SSH ఫార్వర్డ్ ద్వారా VPN ద్వారా మాత్రమే అందుబాటులో ఉన్న HTTPS సైట్కు చేరుకోవడం
VPN ద్వారా మాత్రమే అందుబాటులో ఉన్న ఒక HTTPS సేవను స్థానిక SSH ఫార్వర్డ్తో కనెక్ట్ చేయండి, --connect-toతో నిజమైన హోస్ట్నామ్ను ఉంచండి, ఒక TCP ఫార్వర్డ్ ఏమి కవర్ చేయలేదో తెలుసుకోండి.
ఒక యంత్రానికి ఇప్పటికే ఆమోదించబడిన VPN యాక్సెస్ ఉంది, రెండవ యంత్రానికి సరిగ్గా ఒక ప్రైవేట్ HTTPS సేవ అవసరం, మరియు స్థానిక SSH ఫార్వర్డ్ రెండవ యంత్రానికి టన్నెల్ ఇవ్వకుండా ఆ అంతరాన్ని నింపగలదు. ఫార్వర్డ్ మొత్తం నెట్వర్క్కు బదులుగా ఒక TCP గమ్యాన్ని మోసుకెళుతుంది, మరియు ఆ పరిమితి కూడా ప్రధాన విషయం. క్రింది ఐదు దశలను వరుసగా పూర్తి చేయండి, ఎందుకంటే ప్రతి ఒక్కటి వేరే కారణంతో విఫలమవుతుంది మరియు తరువాతి దశ మునుపటి లోటును కాపాడలేదు. ఏదైనా ముందస్తు షరతు లేకుంటే ఈ రూపకల్పన దానిని పరిష్కరించదు, ఆదేశాలను ఎలా సర్దుబాటు చేసినా సహాయం చేయదు.
దశ ఒకటి: మూడు ముందస్తు షరతులను నిర్ధారించండి
ఏదైనా ఆదేశానికి అర్థం రావడానికి ముందు మూడు విషయాలు ఇప్పటికే నిజమై ఉండాలి. మొదటి యంత్రాన్ని ఫార్వర్డింగ్ హోస్ట్గా ఉపయోగించడానికి అనుమతి, దానికి పనిచేసే SSH యాక్సెస్, మరియు ఉద్దేశించిన గమ్యాన్ని అనుమతించే సర్వర్ విధానం అవసరం. ఫైల్ బదిలీ కోసం సృష్టించిన SSH ఖాతాలో ఫార్వర్డింగ్ నిలిపివేయబడి ఉండవచ్చు, ఫార్వర్డింగ్ను అనుమతించే సర్వర్ కూడా దాని ద్వారా ఏ గమ్యాలను చేరుకోవచ్చో పరిమితం చేయవచ్చు. పరీక్షించే ముందు అడగండి, ఎందుకంటే ఒప్పందం లేకుండా సహోద్యోగి వర్క్స్టేషన్ను జంప్ పాయింట్గా ఉపయోగించడం ఆదేశం పరిపూర్ణంగా పనిచేసినా విధాన సమస్య.
ఆ జాబితాలోని సాంకేతిక సగభాగాన్ని రెండు ఆదేశాలు పరిష్కరిస్తాయి. మొదటిది ఖాతా మరియు కీ ఇంటరాక్టివ్ ప్రాంప్ట్ లేకుండా పనిచేస్తాయని నిరూపిస్తుంది, రెండవది కాన్ఫిగరేషన్ ఫైల్లోని వ్యాఖ్యానించిన ఉదాహరణకు బదులుగా వాస్తవ సర్వర్ విధానాన్ని ముద్రిస్తుంది.
ssh -o BatchMode=yes [email protected] 'echo ok'
sudo sshd -T | grep -E 'allowtcpforwarding|permitopen'
దశ రెండు: loopback పోర్ట్ను బైండ్ చేసి సెషన్ను సజీవంగా ఉంచండి
క్లయింట్ అప్లికేషన్ నడుపుతున్న యంత్రంలో ప్రైవేట్ సేవకు స్థానిక ఫార్వర్డ్ను తెరవండి. స్థానిక నెట్వర్క్లో ప్రచురించబడకుండా ఉండటానికి దాన్ని స్పష్టంగా loopbackకు బైండ్ చేయండి, మరియు ఏ స్థానిక సేవ కూడా ఇప్పటికే పట్టుకోని అధిక పోర్ట్ను ఎంచుకోండి. పని చేస్తున్నప్పుడు సెషన్ను నడుస్తూ ఉంచండి, ఎందుకంటే దాన్ని మూసివేయడం శ్రోతను కూడా మూసివేస్తుంది. ExitOnForwardFailure తిరస్కరించబడిన బైండ్ లేదా ఆక్రమించబడిన పోర్ట్ను ఫార్వర్డ్ లేకుండా మిగిలిపోయే సెషన్కు బదులుగా తక్షణ నిష్క్రమణగా మారుస్తుంది, ఈ వైఫల్య విధానమే ఎక్కువ సమయాన్ని వృథా చేస్తుంది.
ప్రైవేట్ కనెక్షన్ జంప్ హోస్ట్ నుండి ఏర్పడుతుంది, కాబట్టి ఆ హోస్ట్ DNS, మార్గాలు, VPN విధానం మరియు సేవా యాక్సెస్ అన్నీ పనిచేయాలి. SSH సెషన్ జంప్ హోస్ట్కు లేని చేరుకోగల సామర్థ్యాన్ని సృష్టించదు, VPN ఎప్పుడూ నెట్టని మార్గాన్ని అది సరిచేయలేదు. ఆదేశం మౌనాన్ని నమ్మడం బదులు శ్రోత నిజంగా ఉన్న చోటే నిర్ధారించండి.
ssh -N -o ExitOnForwardFailure=yes -L 127.0.0.1:9443:portal.lab.example:443 [email protected]
ss -ltn '( sport = :9443 )'
దశ మూడు: సాకెట్ స్థానికంగా ఉన్నప్పుడు HTTPS పేరును ఉంచండి
https://127.0.0.1:9443/ బ్రౌజ్ చేయడం TLS సర్వర్ పేరు మరియు అప్లికేషన్ అధికారాన్ని మారుస్తుంది. portal.lab.example కోసం జారీ చేసిన ధృవపత్రం loopback చిరునామాపై ధృవీకరించబడదు, మరియు దాని ఫలితంగా వచ్చే లోపం ఫార్వర్డింగ్ షార్ట్కట్ బదులు విరిగిన ధృవపత్రంలా కనిపిస్తుంది. ఆదేశ పంక్తి పరీక్ష కోసం నిజమైన URL ఉంచి సాకెట్ గమ్యాన్ని మాత్రమే మార్చండి. --connect-to అలాగే చేస్తుంది, మరియు క్రింద ఉపయోగించిన నాలుగు-క్షేత్ర రూపాన్ని curl మాన్యువల్ నమోదు చేస్తుంది.
curl --noproxy portal.lab.example --connect-to portal.lab.example:443:127.0.0.1:9443 https://portal.lab.example/
పేరు URLలో, TLS కరచాలనంలో మరియు Host శీర్షికలో మిగిలి ఉంటుంది, TCP కనెక్షన్ మాత్రం స్థానిక శ్రోతకు వెళుతుంది. ప్రాక్సీ లేని ఎంపిక పరీక్షను ఈ ఫార్వర్డ్పైనే ఉంచుతుంది, కాన్ఫిగర్ చేసిన HTTP ప్రాక్సీ దాన్ని అడ్డగించడానికి అనుమతించడం బదులు, ధృవపత్ర ధృవీకరణను ఆన్లో ఉంచడమే ఫలితాన్ని అర్థవంతంగా చేస్తుంది.
దశ నాలుగు: ఒక ఫార్వర్డ్ ఏమి కవర్ చేయలేదో తెలుసుకోండి
ఒక TCP ఫార్వర్డ్ ఒక గమ్య పోర్ట్ను కవర్ చేస్తుంది. రెండవ హోస్ట్నామ్కు మళ్లించే, ప్రైవేట్ నెట్వర్క్ లోపలి హోస్ట్ నుండి వనరులను లోడ్ చేసే లేదా మరో పోర్ట్కు పంపే పేజీకి దాని సొంత ఫార్వర్డ్ అవసరం, వాటిలో ప్రతిదానికీ మొదటిదానితో సమానమైన విధాన తనిఖీ అవసరం. బ్రౌజర్ పని ప్రవాహాలు తమ సొంత అవసరాలను జోడిస్తాయి, ఎందుకంటే ప్రాక్సీ కాన్ఫిగరేషన్ లేదా స్థానిక మ్యాపింగ్ ద్వారా నిజమైన పేరును స్థానిక పోర్ట్కు పంపమని బ్రౌజర్కు చెప్పాలి. కాబట్టి విజయవంతమైన ఆదేశ పంక్తి పరీక్ష బ్రౌజర్ కూడా విజయవంతమవుతుందని నిరూపించదు, మార్గాన్ని నిరూపించినా.
UDP, SMB ఆవిష్కరణ మరియు డొమైన్ సైన్-ఇన్ TCP ఫార్వర్డ్ గుండా అసలు వెళ్లవు. నిజమైన అవసరం సాధారణ నెట్వర్క్ యాక్సెస్ అయితే, ఈ రూపకల్పన తప్పు సాధనం మరియు మద్దతు ఉన్న రిమోట్-యాక్సెస్ గేట్వే సరైనది.
దశ ఐదు: శుభ్రం చేసి నమోదు చేయండి
పరీక్ష ముగిసినప్పుడు సెషన్ను ఆపి శ్రోత వెళ్లిపోయిందని నిర్ధారించండి. ఎంచుకున్న పోర్ట్ ఇప్పటికే ఆక్రమించబడి ఉంటే, సంఖ్యను విడుదల చేయడానికి సంబంధం లేని స్థానిక సేవను ఆపడం బదులు మరో ఉపయోగించని loopback పోర్ట్ను ఎంచుకుని URL, పరీక్షా ఆదేశం మరియు గమనికను కలిసి నవీకరించండి. ల్యాప్టాప్లో ఫార్వర్డ్ను తెరిచి వదిలేయడం నిర్ధారణను నిర్వహించని సేవగా మారుస్తుంది.
జంప్ హోస్ట్, ఫార్వర్డ్ చేసిన గమ్యం, స్థానిక పోర్ట్ మరియు ఈ ఏర్పాటును ఎవరు ఆమోదించారో రాయండి. ఒకరి shell చరిత్రలో మాత్రమే ఉన్న ఫార్వర్డ్ ఒక రీబూట్ దూరంలో పునరావృత దర్యాప్తుకు దారి తీస్తుంది, తదుపరి వ్యక్తికి మూడు ముందస్తు షరతుల్లో ఏది ఇప్పటికే తనిఖీ చేయబడిందో తెలియదు.