Kun sinulla on sallittu SSH-pääsy palvelimelle, OpenSSH voi luoda SOCKS-kuuntelijan tietokoneellesi. SSH-yhteys kuljettaa välitettävän liikenteen, ja etäpalvelin muodostaa kohdeyhteyden.

Vain loopbackissa kuunteleva päätepiste

ssh -N -T -o ControlPath=none -o ForkAfterAuthentication=no -o ExitOnForwardFailure=yes -D 127.0.0.1:1080 [email protected]

Korvaa tili ja isäntänimi. SSH-palvelimen täytyy sallia välitys; ylläpitäjä voi rajoittaa välitystä ja kohteita tilille kirjautumisesta riippumatta.

-D luo dynaamisen välityksen, ja tarkasti annettu loopback-osoite rajoittaa kuuntelijan tälle koneelle. -N jättää etäkomennon pois, -T näennäispäätteen. ControlPath=none välttää olemassa olevan jakomasterin, ja ForkAfterAuthentication=no pitää tämän kutsun etualalla.

Pidä prosessi käynnissä välityspalvelinta käyttäessäsi. Jos portti 1080 on varattu, valitse toinen vapaa korkea portti ja päivitä asiakas. ExitOnForwardFailure=yes lopettaa SSH:n, jos kuuntelijaa ei voi luoda.

SOCKS-päätepisteen käyttö

curl --proxy socks5h://127.0.0.1:1080 --noproxy '' --connect-timeout 5 --max-time 15 https://example.com/

Tämä pyyntö siirtää kohdenimen käsittelyn SOCKS5:lle. Muut sovellukset tarvitsevat omat SOCKS-asetukset; HTTP-välityspalvelinkenttä ei osaa puhua SOCKSia tälle kuuntelijalle.

Portin omistavan prosessin tarkistaminen:

ss -ltnp 'sport = :1080'

Tarkoitetun SSH-prosessin pitäisi omistaa loopback-kuuntelija. Sen kautta tehty pyyntö testaa, tavoittaako myös etäpalvelin kohteen. Käytä hallinnassasi olevaa kohdetta, kun haluat tarkastaa havaitun ulostulon.

Istunnon elinkaari

Ctrl-C sulkee SSH-prosessin, kuuntelijan ja välitetyt yhteydet. Myös SSH-yhteyden katkeaminen tekee välityspalvelimen käyttökelvottomaksi.

ExitOnForwardFailure tarkistaa perustamisen. Se ei lopeta SSH:ta jokaisen myöhemmän kohdeyhteyden epäonnistuessa, joten tutki istunto, paikallinen portti ja kohdepyyntö erikseen.

Aiheeseen liittyvät artikkelit