Wéi eng lokal SSH-Weiderleedung eng TCP-OpenVPN-Sessioun dréit
Een lokale Port, zwou authentifizéiert Bezéiungen, dräi Transporten. Wat d'SSH-Weiderleedung beweegt, a wou d'Schleef an d'Zertifikatspréifungen nach gëllen.
Hei stapele sech dräi Transporten, an all huet seng eege Kaderung. D'VPN-Lescht reest an enger TLS-Sessioun, déi TLS-Sessioun reest an enger TCP-Verbindung op e Loopback-Port, an d'Byten vun där Verbindung reesen an SSH op e Relay-Host, deen déi richteg TCP-Verbindung zum VPN-Lauschterer opmécht. Näischt an der Anuerdnung ännert dat, wat OpenVPN authentifizéiert, an näischt dorun mécht en UDP-Lauschterer iwwer TCP erreechbar. Liest de Rescht als Beschreiwung vum Bytewee, net als Rezept fir eng Netzwierkkontroll z'ëmgoen.
Wat déi lokal Weiderleedung tatsächlech beweegt
Den SSH-Client lauschtert op engem lokale Port. Wann e lokale Prozess sech verbënnt, packt de Client d'Byten a säi verschlësselte Kanal, an d'Serversäit mécht eng nei TCP-Verbindung zum Zil op, dat an der Weiderleedungsufro genannt ass.
Dëst Zil léist de Relay op, net Är Maschinn, dofir funktionéiert en Numm, deen nëmmen am banneschten Deel vum Fernnetzwierk existéiert, weider. Dat heescht och, datt de Relay de VPN-Lauschterer erreeche muss an en Zréckwee dohinner muss hunn. En Numm, deen op Ärem Laptop opgeléist gëtt, seet näischt doriwwer, wat de Relay ka gesinn.
D'SSH-Sessioun ze starten beweist nëmmen, datt de Relay erreechbar an authentifizéiert ass. Et seet näischt doriwwer, ob den nächsten Lauschterer leeft, ob eng Firewall tëscht Relay a Lauschterer d'Verbindung acceptéiert, oder ob d'VPN Äre Profil acceptéiert.
Richt den Client op den lokale Lauschterer
En declaréierte Beispill: de Relay erreecht en TCP-Lauschterer op gw.internal.example:443, an en héije lokale Port weist dee Wee nëmmen dëser Maschinn.
ssh -N -L 127.0.0.1:24011:gw.internal.example:443 [email protected]Den OpenSSH-Handbuch beschreift déi lokal Weiderleedung als lokalt Unhuele vun TCP-Verbindungen an Opmaachen vun der nächster Verbindung vun der ferner Säit. Bind den Lauschterer un de Loopback an net un all Interface, well eng Weiderleedung, déi aus dem Netzwierk erreechbar ass, en oppene Relay mat Ärem Numm drop ass. Eng Wildcard-Bindung weist de Port och all anere lokale Kont op enger gedeelter Maschinn.
Setzt duerno den VPN-Client a säin TCP-Modus an richt en op 127.0.0.1:24011. Wann de Profil UDP benotzt, kann dës Konzept net hëllefen: d'Weiderleedung dréit en Bytestroum, an et gëtt keen Datagramwee duerch.
Halt déi zwou Authentifizéierungen getrennt
SSH authentifizéiert den Relay-Host. OpenVPN authentifizéiert nach ëmmer de VPN-Peer, an d'Loopback-Zil ännert dës Fuerderung net. D'Zertifikatspréifungen ausschalten, well de Socket elo op localhost weist, ass déi schlëmmst Ofkierzung an dëser Konzept. Et verwandelt eng Transportanuerdnung an eng Vertrauensanuerdnung, an et huet keen déi zweet guttgeheescht.
Halt den Vertrauensanker vum Profil, d'Serversrollenpréifung an d'Nimmverifikatioun intakt. Wann Äre Client den Numm vum Server mat der Adress vergläicht, déi en ugeruff huet, brauch de Loopback vläicht eng explizit Nummastellung amplaz enger ausgeschalteter Préifung, an d'Profildokumentatioun ass d'Plaz, fir ze bestätegen, wéi ee Feld verglach gëtt.
Behandelt de Relay als zweet Partei an der Vertrauensgeschicht: säin Administrateur ka Verbindungsmetadaten gesinn an d'Weiderleedung ëmleeden, wann d'Konfiguratioun geännert gëtt. D'Anuerdnung brauch d'Zoustëmmung vum Relay an dem Besëtzer vum VPN-Service, net nëmmen déi vun deem, deen se haut brauch.
Baut keng Schleef ënner dem Tunnel
Soubal d'VPN Route installéiert, brauch d'SSH-Verbindung, déi se dréit, nach ëmmer e Wee zum Relay, deen net duerch den Tunnel geet. Wann d'Standardroute op d'VPN wiesselt an de Relay nëmmen duerch dee selwechten Tunnel erreechbar ass, fällt den Transport zesummen an d'VPN geet mat. De Feeler gesäit aus wéi en ofgebrach Tunnel an net wéi e Routingfeeler, dofir gëtt en falsch diagnostizéiert.
Déi üblech Verbesserung ass eng Hostroute zur Relayadress, déi virum Opgoe vum Tunnel un de physikaleschen Interface gebonnen ass, plus eng Préifung, datt d'Route eng Reconnect iwwersteet. Verifizéiert se mat enger Routensich fir d'Relayadress amplaz unzehuelen, datt d'Reiefolleg richteg war.
Erwaart och, datt dëse Stack méi lues a méi fragil ass wéi eng direkt Verbindung, well et elo zwou geuerdnete Transporten an nach en Endpunkt ze ënnerhalen gëtt. Et ass e Wee fir eng Netzwierkgrenz ze iwwerschreiden, keng Leeschtungstechnik.
Maacht den Lauschterer zou, wann Dir fäerdeg sidd
Stoppt d'SSH-Sessioun, wann den Tunnel net méi gebraucht gëtt, a bestätegt, datt de lokale Port fräiginn ass. Eng vergiess Weiderleedung hält en authentifizéierte Wee op enger Maschinn op, déi gedeelt ka sinn.
Kuckt och d'erlaubte Weiderleedungsziler vum Relay un, well eng permisiv Konfiguratioun all kompromittéierte Kont an eng allgemeng Dréipunkt ëmwandelt. Notéiert Port, Relay an Zil zesummen, sou datt déi nächst Persoun weess, fir wat d'Weiderleedung war a ob se nach guttgeheescht ass.