Vrata, posredovana prek SSH, niso vedno posredniški strežnik SOCKS
Preden nastavite aplikacijo, ločite fiksno lokalno posredovanje SSH od dinamičnega poslušalca SOCKS.
Ustvarite tunel SSH, vnesete 127.0.0.1 in njegova vrata v nastavitve posredniškega strežnika v brskalniku, in nič se ne naloži. Poslušalec morda deluje brezhibno. Morda le čaka na napačno vrsto prometa.
| Posredovanje | Kaj pošilja lokalna aplikacija | Izbira cilja |
|---|---|---|
-L | Običajni protokol ciljne storitve | Določeno v ukazu SSH |
-D | Pogajanje SOCKS, nato promet aplikacije | Zahteva odjemalec SOCKS |
Za en sam spletni strežnik je to fiksno posredovanje:
ssh -N -L 127.0.0.1:9080:web.example.com:80 [email protected]
Obiščite http://127.0.0.1:9080/ kot spletno mesto. Vrat 9080 ne označite kot SOCKS: posreduje bajte enemu spletnemu strežniku, navedenemu v ukazu. Odpiranje mesta pod drugim imenom gostitelja lahko vpliva tudi na njegovo virtualno gostovanje, preusmeritve ali piškotke.
Za poslušalca SOCKS se oblika spremeni:
ssh -N -D 127.0.0.1:1080 [email protected]
Nastavite aplikacijo, da uporablja SOCKS na 127.0.0.1:1080. Če ta naslov vnesete neposredno v naslovno vrstico brskalnika, se spletna zahteva pošlje poslušalcu SOCKS, še eno neujemanje protokolov.
Priročnik OpenSSH dokumentira obe obliki. Obstaja koristna izjema: posredovanje obstoječega posredniškega strežnika HTTP z -L ustvari lokalna vrata, ki govorijo protokol posredniškega strežnika HTTP, ker je njegov fiksni cilj sam posredniški strežnik HTTP. Storitev na oddaljenem koncu določa, kaj spada k fiksnemu posredovanju. Posredovanje obstoječega posredniškega strežnika prek SSH ohrani protokol in račun tega posredniškega strežnika.