Vytvoření místní SOCKS proxy pomocí SSH
Použijte dynamické předávání OpenSSH na 127.0.0.1, nechte proces běžet po dobu relace a rozlišujte funkční listener od dostupného cíle.
S oprávněným SSH přístupem k serveru může OpenSSH vytvořit SOCKS listener na vašem počítači. SSH spojení přenáší předávaný provoz a vzdálený server se připojuje k cíli.
Listener pouze na loopbacku
ssh -N -T -o ControlPath=none -o ForkAfterAuthentication=no -o ExitOnForwardFailure=yes -D 127.0.0.1:1080 [email protected]
Nahraďte účet a název hostitele. SSH server musí povolovat předávání; správce je může omezit i s cíli nezávisle na přihlášení k účtu.
-D vytváří dynamické předávání a výslovná loopback adresa omezuje listener na tento počítač. -N vynechá vzdálený příkaz, -T pseudoterminál. ControlPath=none obejde existující sdílecí master a ForkAfterAuthentication=no ponechá toto spuštění v popředí.
Při používání proxy nechte proces běžet. Je-li port 1080 obsazen, vyberte jiný volný vysoký port a upravte klienta. ExitOnForwardFailure=yes ukončí SSH, pokud listener nelze vytvořit.
Použití koncového bodu SOCKS
curl --proxy socks5h://127.0.0.1:1080 --noproxy '' --connect-timeout 5 --max-time 15 https://example.com/
Tento požadavek deleguje zpracování názvu cíle přes SOCKS5. Ostatní aplikace potřebují vlastní nastavení SOCKS; pole pro HTTP proxy s tímto listenerem neumí mluvit SOCKS.
Zjištění procesu vlastnícího port:
ss -ltnp 'sport = :1080'
Zamýšlený SSH proces by měl vlastnit loopback listener. Požadavek přes něj ověří, zda vzdálený server také dosáhne cíle. Použijte kontrolovaný cíl, potřebujete-li prozkoumat pozorovaný výstup.
Doba trvání relace
Ctrl-C zavře SSH proces, listener i předávaná spojení. Přerušení SSH spojení rovněž znepřístupní proxy.
ExitOnForwardFailure kontroluje vytvoření. Neukončuje SSH při každém pozdějším selhání spojení k cíli, proto diagnostikujte zvlášť relaci, místní port a cílový požadavek.