клиент <--> локальный прокси SOCKS <--> удаленный VPS (SSH) сервер
Я хочу знать, когда клиент отправляет HTTP-запрос (www.youtube.com),
и запрос достиг VPS-сервера через прокси-сервер SOCKS,
как ssh-сервер узнает, что нужно получить страницу YouTube для клиента и отправить обратно, а не просто отбросить ее?
Я НЕ выполнял никаких специальных настроек на сервере VPS sshd_config
Я много искал по этому поводу, но похоже, что все эти статьи - просто разговоры
о части 'client-> proxy-> ssh server', а не о части 'ssh server -> external world'
Именно код внутри sshd, реализующий SOCKS, выполняет работу.
Когда ты бежишь ssh remote.server -D xxx
, локальный прослушиватель настроен на порт xxx. Трафик на этот локальный порт передается через туннель ssh к коду SOCKS на удаленном сервере.
Это работает, потому что функция туннелирования записана в клиент, а полная функциональность SOCKS записана на сервер, в обоих случаях авторами кода. Больше об этом сказать нечего.