Du mellst dech iwwer SSH un, setz -D 1080 derbäi, an de Kommando geléngt. Et gëtt elo en SOCKS-Lauscher um Telefon, an d'Halschent vun den Appen geet nach ëmmer iwwer Mobilfunkdaten eraus. Dat ass dat normal Resultat, keen futti Tunnel: ssh -D schaaft en Proxy-Endpunkt, an Android-Appen benotzen e Proxy nëmmen, wann eppes se dozou zwéngt. D'Kette Schrëtt fir Schrëtt duerchzegoen weist, wou all Deel vun der Aarbecht tatsächlech läit.

Fänk u wou den Trafik ufänkt

Wiel eng App aus, déi den Tunnel soll benotzen, a kuck ob se eng eege Proxy-Astellung huet. E Browser mat engem SOCKS-Feld ass den einfachen Fall: riicht en op 127.0.0.1:1080, schalt de Remote-DNS an, wann d'Astellung existéiert, an d'Ufro geet duerch. En Chat-Client, eng Kaart-App oder e Spill ouni sou engem Feld hu keng Méiglechkeet de Lauscher ze benotzen, an näischt wat s du an den SSH-Kommando schreifs ännert dat.

Ier s eppes anescht mat abezitts, bewaist datt de Lauscher aus dem Telefon senger eege Shell mat engem Client funktionéiert, deen direkt SOCKS schwätzt:

ssh -N -D 1080 [email protected]
curl --socks5-hostname 127.0.0.1:1080 https://ifconfig.me

D'Adress déi zréckkënnt soll déi vum SSH-Server sinn, net déi vum Telefon. Wann et esou ass, ass d'Proxy-Halschent fäerdeg an de Rescht vun der Aarbecht geet ëm d'Ofdeckung. Wann net, reparéier d'éischt d'SSH-Säit: Schlëssel-Authentifikatioun, d'Fähegkeet vum Server d'Zil z'erreechen, an deenen eege Ausgang vum SSH-Server.

Setz dat Deel derbäi wat Android brauch

Appen ouni Proxy-Astellung brauchen eppes wat hir Pakete fänkt an se a Proxy-Verbindungen ëmwandelt. Op engem Gerät ouni Root ass dat en VPN-Service-Adapter: eng App déi de virtuelle Interface hëlt an den ausgewielten Trafik an de lokalen SOCKS-Lauscher weidergëtt. D'Kette gëtt App, Adapter, SOCKS-Lauscher, SSH-Verbindung, Zil.

Installéier den Adapter, gëff him d'VPN-Erlaabnis a wiel déi Appen oder Strecken déi en fänke soll. D'Schlëssel-Ikon an der Statusleescht representéiert dann den Adapter, net en separate kommerziellen VPN. Android erlaabt eng eenzeg aktiv VPN-Service-Verbindung pro Benotzerprofil, dofir en zweet VPN-App starten setzt keng Schicht op d'Kette: et konkurréiert ëm déiselwecht Roll.

Dëst ass och dee Schrëtt wou en erfollegräiche Test dech täusche kann. Wann den Adapter just dee Browser fänkt deen s du schonn op de Proxy geriicht hues, funktionéiert alles an näischt anescht ass ofgedeckt. Lies d'Fang-Lëscht ier s ofschléiss datt d'Gerät am Tunnel ass.

Hal den SSH-Transport ausserhalb vum Fank

D'SSH-Verbindung selwer däerf net zréck an den SOCKS-Tunnel deen se ënnerhält. Wann den Adapter den Trafik vun der SSH-App fänkt, hänkt den Tunnel vun enger Verbindung of déi op den Tunnel waart, an d'Resultat ass eng Schleif déi stockt oder feelt soubal den Adapter start.

Integréiert Implementatioune schützen hire eege Transport-Socket. Mat getrennten Appen brauchs du eng ënnerstëtzten Ausnam: loos d'SSH-App ausserhalb vum Fank, oder schléiss den SSH-Endpunkt iwwer d'Adress aus. Béid hu Käschten. Eng ganz Terminal-App ausschléissen hëlt och hir onverbonnen Netzwierkaktivitéit aus dem Tunnel, an eng Adressausnam brécht wann d'Adress vum Server sech ännert oder wann den Numm bei der nächster Verbindung anescht opgeléist gëtt.

Iwwerpréif d'Ausnam vun dobaussen: verbann den Adapter nei, a bestäteg dann datt d'SSH-Sessioun iwwerliewt an datt d'Ufro iwwer de Proxy nach ëmmer d'Adress vum Server meldt. Eng Sessioun déi funktionéiert bis den Adapter start an dann agefréiert ass déi Schleif.

Verfolleg DNS an UDP bis um Enn vun der Kette

Dem OpenSSH seng dynamesch Weidergab dréit TCP-Verbindungen. Et ass keen UDP-Associate- oder ICMP-Transport, an en Adapter kann keng UDP-Weidergab erféieren andeems en UDP-Paketen unhëlt. Alles wat op UDP insistéiert, och QUIC a WebRTC-Medien, geet entweder futti oder fält op TCP zréck, jee no App.

DNS brauch seng eegen Entscheedung. Eng App déi en Numm lokal opléist schéckt d'Ufro iwwer de normale Resolver ier se sech verbënnt, dofir dréit den Tunnel d'Verbindung awer net d'Sich. En proxy-bewusste Client mat enger Remote-DNS-Optioun vermeit dat; eng gefaangen App ouni déi net. Iwwerpréif wéi en Resolver geäntwert huet amplaz unzehuelen datt den Adapter et geännert huet.

Hal den SOCKS-Lauscher un de Loopback gebonnen, verifizéier de Host-Schlëssel vum SSH-Server beim éischte Gebrauch, a loos déi normal HTTPS-Validatioun op hirem Plaz fir d'Schluss-Site. SSH schützt de Segment Telefon-zu-Server; et verschlësselt net wat de Server duerno mécht.

Iwwerpréif déi zwou Liewensdaueren an entscheed

Den Adapter an d'SSH-Sessioun hunn getrennt Liewensdaueren. Wann SSH fält wärend den Adapter nach fänkt, kënnen Appen hänken ouni kloer Feeler, well hir Pakete nach ëmmer an en virtuelle Interface kommen deen keen funktionéierenden Ausgang méi huet. Wann den Adapter stoppt, ginn d'Appen entweder direkt eraus oder gi blockéiert, jee no der VPN-Politik vum Gerät.

Test béid Richtunge bewosst: kill d'SSH-Sessioun mam Adapter am Laf, a stopp dann den Adapter wärend SSH u bleift. Wat den Telefon an all Fall mécht ass d'Politik déi s tatsächlech ausrullt, egal wat d'Installatiounsinstruktioune behaapt hunn.

Wann den Aarbechtsfluss Ofdeckung vum ganze Gerät mat engem viraussobaren Feeler gebraucht, ass e richtegen IP VPN, oder en ënnerhalenen Adapter deen fir dës Kette gebaut ass, déi éierlech Äntwert. Eng Shell-Sessioun déi niewent enger onverbonnener Fang-App lafe gelooss gëtt ass keen ënnerhalenen Gerätstunnel; et sinn zwee Komponenten ouni Ofmachung driwwer wat geschitt wann ee vun hinne fäerdeg ass.

Ähnlech Artikelen