Обратный SSH туннель все порты к локальной сети

570
Petah

Как я могу изменить туннель SHH для всех портов на удаленном сервере, чтобы любые запросы, сделанные удаленным сервером, проходили через клиента?

Например

client ssh into server  server requests google.com request goes from the server to the client over ssh then out to google.com google.com responds to client which is forward to server over ssh tunnel 

Я хочу сделать это для всех портов, а также для подключения к Интернету и локальной сети. Он не должен быть постоянным, только когда открыто соединение ssh.

0
Какие? ты пишешь "клиент ssh в сервер", какой клиент? веб-браузер? или ssh.exe? какой сервер? сервер ssh? или http прокси? Наверное, вы имеете в виду клиент веб-браузера. Вы пишете "запрос сервера google.com", какой сервер? сервер ssh? веб-сервер? прокси-сервер http? Я предполагаю, что вы имеете в виду http прокси-сервер. но затем веб-браузер делает запрос .. прежде чем http-прокси-сервер. И что обратного в том, что вы описываете? Вы имеете в виду, что веб-браузер находится на компьютере с ssh-сервером? а http прокси на стороне клиента? barlop 9 лет назад 0
Если вы спрашиваете, как сделать обратный http-прокси .. это уже отвечено на суперпользователя. http://superuser.com/questions/370930/ssh-reverse-socks-tunnel это включает два туннеля ssh, согласно одному ответу так или иначе barlop 9 лет назад 0
@barlop клиент - это ssh.exe, работающий на рабочей станции. Сервер является сервером sshd. Я говорю не только о HTTP, но о всех портах / приложениях. Petah 9 лет назад 0
Ну, дело в том, что вы не можете сделать ни одного приложения. Есть SSH -L, -R и -D. Если вы сделаете -L, то он будет переадресован только на конкретный сервер, например, скажем, у вас есть VNC-сервер ip 5.6.7.8, и он перешлет на это, но вы не можете вдруг принять решение о переадресации на IP. 9.10.11.12 HTTP-прокси позволяет веб-клиент указывает целевой сервер для пересылки при каждом запросе. SSH -D - это SOCKS, он поддерживает несколько протоколов (я полагаю, что они совместимы с socks или что-то в этом роде), включая http-прокси, но не абсолютно любой протокол. barlop 9 лет назад 0
И, кстати, зачем серверу ssh отправлять запрос на google.com ?! если бла-клиент, подключенный к порту, sshd не открыл и не сделал запрос, а sshd просто пересылает его, он на самом деле не выполняет запрос, он прослушивает и пересылает его на клиентскую сторону ssh, а затем пересылает его на веб или любой другой сервер. barlop 9 лет назад 0
ssh -L или -R могут использовать любой протокол, но сервер, на который он пересылается, устанавливается при создании туннеля. в противном случае вы используете -D, который может перенаправлять на любой сервер при каждом запросе, но только для SOCKS. barlop 9 лет назад 0

0 ответов на вопрос