Lidhu me VPN-në e zyrës, nis një shërbim të vogël në portën 8443, dërgo adresën e tunelit një kolegu dhe shiko lidhjen duke dështuar ndërsa klienti vazhdon të raportojë se është i lidhur. Asgjë nuk është prishur në tunel: adresa u nda, sesioni është aktiv dhe paketat që do të mbanin përgjigjen thjesht nuk pranohen kurrë. Kryej tre kontrollet më poshtë me radhë dhe ndalo tek ai që dështon, sepse secili ka një rregullim tjetër dhe vetëm një prej tyre ka të bëjë me VPN-në.

Fillo nga vendi ku socket-i është vërtet i lidhur

Përpara se diçka të drejtohet, diçka duhet të dëgjojë në një adresë që thirrësi mund ta arrijë. Serverat e zhvillimit janë fajtori i zakonshëm, sepse shumë prej tyre lidhen si parazgjedhje me loopback dhe pranojnë vetëm lidhje që vijnë nga e njëjta makinë. Adresa e tunelit nuk e ndryshon këtë lidhje dhe sistemi operativ do ta refuzojë lidhjen shumë përpara se VPN-ja të përfshihet.

ss -ltnp | grep 8443
netstat -ano | findstr 8443

Lexo kolonën e adresës lokale, jo statusin. 127.0.0.1:8443 do të thotë vetëm loopback, dhe rregullimi është një lidhje në 0.0.0.0 ose në vetë adresën e tunelit. 0.0.0.0:8443 pranon në të gjitha ndërfaqet, çka është më e gjerë se sa synon shumica kur makina ka edhe një adresë publike; 10.64.7.15:8443 është versioni i ngushtë që dëgjon vetëm aty ku kolegu mund të arrijë. Vër re edhe emrin e procesit në të njëjtin dalje, sepse një instancë e mbetur nga një test i mëparshëm është një shkak i zakonshëm që porta të duket e hapur dhe të përgjigjet me përmbajtje të gabuar.

Pastaj pyet nëse diçka mund të drejtojë drejt asaj adrese

Një adresë tuneli ka kuptim vetëm për palët e konfiguruara për ta dërguar atë prefiks brenda tunelit. Makina e kolegut ka tabelën e vet dhe, nëse nuk ka rrugë për nënrrjetin e tunelit, paketa shkon te porta e parazgjedhur dhe vdes në një vend që nuk e di se adresa ekziston. Kjo është çështje drejtimi në anën e thirrësit, jo leje në anën tuaj.

Symptom from the callerWhat it usually meansWhere to look next
Connection refused immediatelyNothing is listening on the address the packet reachedThe bind address and the process owning the port
Connection times out with no replyA policy dropped the packet, or no route returnsServer forwarding, host firewall, cloud security group
Works from the same machine onlyListener is on loopback, or no route reaches the tunnel addressBind address, then the caller's route to that prefix

Serveri mes dy klientëve ka po aq rëndësi. Në ndërtimin e zakonshëm të aksesit në distancë, secili klient hap një lidhje dalëse drejt portës dhe porta mban gjendjen e atyre rrjedhave, kështu që përgjigjet kthehen në një rrugë që ai e njeh tashmë. Një lidhje nga një klient në tjetrin është një rrjedhë e re që porta duhet ta pranojë dhe ta përcjellë, dhe shumë instalime e çaktivizojnë këtë me qëllim për t'i mbajtur klientët të izoluar nga njëri-tjetri. Shërbimet VPN për konsumatorë zakonisht izolojnë si parazgjedhje; portat korporative ndonjëherë e lejojnë atë sipas grupit.

Kontrollo drejtimin përpara se të ndryshosh diçka në host. Nëse adresa e tunelit përgjigjet nga vetë porta, por jo nga një palë, ndryshimi është cilësimi klient-ndaj-klient i portës, dhe asnjë redaktim i firewall-it lokal nuk mund ta zëvendësojë atë.

Më në fund, gjej politikën që lejon rrjedhën

Tre shtresa politike qëndrojnë midis një pakete të drejtuar dhe një shërbimi që përgjigjet: vendimi i përcjelljes së serverit VPN, firewall-i i host-it dhe çdo grup sigurie i resë përpara instancës. Të tre duhet të bien dakord dhe dështojnë në mënyra të ndryshme, prandaj simptomi në tabelën më sipër është më i dobishëm se mesazhi i gabimit në shfletues.

Firewall-i i host-it është shtresa që njerëzit e harrojnë pas një lidhjeje të suksesshme, sepse një rregull që lejon portën në ndërfaqen LAN nuk e lejon automatikisht në ndërfaqen e tunelit. Rregullat e kufizuara në ndërfaqe janë ndërtim i saktë dhe njëkohësisht shkaku i zakonshëm i një shërbimi që punon nga zyra dhe jo nga shtëpia. Lexo shtrirjen e rregullit, jo numrin e portës.

Filtrimi me gjendje shpjegon rastin e kundërt. Një lidhje dalëse nga laptopi juaj krijon gjendje dhe përgjigjet ndaj saj pranohen pa një rregull hyrës. Lidhja e kolegut është një rrjedhë krejt e re pa gjendje pas saj, prandaj kërkon leje të shprehur. Kjo asimetri është i gjithë shkaku pse një sesion shfletuesi që punon në makinën tuaj nuk thotë asgjë nëse shërbimi arrihet nga jashtë.

Kur një kontroll dështon, ndrysho ndërtimin dhe jo tunelin

Nëse kërkesa është që një koleg të hapë shërbimin tuaj lokal, përgjigjja e ndershme është zakonisht një mekanizëm i ndërtuar për akses hyrës. Një tunel SSH i kundërt është më i vogli: makina juaj lidhet nga jashtë me një host që kolegu tashmë mund ta arrijë, dhe dëgjuesi ekziston në atë host.

ssh -N -R 8443:127.0.0.1:8443 [email protected]

Releu ka nevojë për GatewayPorts clientspecified në konfigurimin e serverit SSH, përndryshe dëgjuesi i përcjellë lidhet me loopback në rele dhe kolegu përballet me të njëjtin refuzim si më parë. Për çdo gjë që zgjat më shumë se një pasdite, një balancues ngarkese ose ingress me kontroll shëndetësor dhe certifikatë për emrin e publikuar është instrumenti më i mirë, dhe një tunel nga vendndodhja në vendndodhje me rrugë për të dy nënrrjetet është përgjigjja e saktë kur dy rrjete vërtet duhet të flasin.

Secili prej këtyre ndërtimeve e bën ekspozimin të shprehur, dhe ky është qëllimi. Një VPN lëviz paketa midis rrjeteve për të cilat ishit tashmë i autorizuar; nuk publikon një shërbim dhe nuk e kthen një laptop në një host të kthyer nga interneti. Detyra është të vendosësh cilën nga tre shtresat të ndryshosh, dhe tuneli rrallë është një prej tyre.

Artikuj të ngjashëm