Порт прослеђен кроз SSH није увек SOCKS прокси
Разликујте фиксно локално SSH прослеђивање од динамичког SOCKS ослушкивача пре конфигурисања апликације.
Направите SSH тунел, унесете 127.0.0.1 и његов порт у подешавања проксија прегледача и ништа се не учитава. Ослушкивач можда ради беспрекорно. Можда једноставно чека погрешну врсту саобраћаја.
| Прослеђивање | Шта локална апликација шаље | Избор одредишта |
|---|---|---|
-L | Уобичајени протокол циљне услуге | Фиксирано у SSH наредби |
-D | SOCKS преговарање, затим саобраћај апликације | Затражено од SOCKS клијента |
За један веб сервер ово је фиксно прослеђивање:
ssh -N -L 127.0.0.1:9080:web.example.com:80 [email protected]
Посетите http://127.0.0.1:9080/ као веб страницу. Не означавајте порт 9080 као SOCKS: он прослеђује бајтове једном веб серверу наведеном у наредби. Отварање странице под другим именом домаћина такође може утицати на његово виртуелно хостовање, преусмеравања или колачиће.
За SOCKS ослушкивач облик се мења:
ssh -N -D 127.0.0.1:1080 [email protected]
Конфигуришите апликацију да користи SOCKS на 127.0.0.1:1080. Унос те адресе директно у адресну траку прегледача шаље веб захтев SOCKS ослушкивачу, још једно неслагање протокола.
OpenSSH приручник документује оба облика. Постоји корисна изнимка: прослеђивање постојећег HTTP проксија помоћу -L ствара локални порт који говори HTTP прокси протокол, јер је његово фиксно одредиште и само HTTP прокси. Услуга на удаљеном крају одређује шта припада фиксном прослеђивању. Прослеђивање постојећег проксија кроз SSH задржава протокол и рачун тог проксија.