1

У меня проблемы с настройкой следующего:

Я на Linux на машине LOCAL (мой ноутбук).

Я использую SSH на удаленной машине компании, которая находится за брандмауэром и разрешает ТОЛЬКО входящие соединения SSH (порт 22), никаких исходящих соединений. У меня есть полный root-доступ как на LOCAL, так и на REMOTE, однако REMOTE - это VPS и аппаратный брандмауэр.

Теперь мне нужен доступ к сети по REMOTE (HTTP и другим протоколам) для загрузки и сборки некоторого программного обеспечения. Мне также нужно получить доступ к протоколам NON HTTP, таким как git.

Я надеялся настроить обратный SSH-туннель для использования моего локального компьютера, где я мог бы использовать сервер socks. Таким образом, сетевой доступ на REMOTE будет перенаправлен через туннель SSH на сервер socks, работающий на компьютере LOCAL.

Как бы я настроил что-то подобное?

Спасибо

2 ответа2

4

Это оказалось намного проще, чем я думал, что я делал неправильно, пытаясь сделать все одной командой (что на самом деле должно быть возможно, учитывая, что мне нужно запускать команды только на LOCAL).

Единственное, что нужно было сделать, это 1) установить обратный туннель между LOCAL и REMOTE, а затем запустить динамическую переадресацию портов на LOCAL.

Теперь у меня есть доступ к Интернету на REMOTE, который туннелируется через LOCAL, приложения socks настроены на использование перенаправленного порта, который перенаправляет на динамическое перенаправление портов, работающее на LOCAL.

LOCAL:> ssh -D SOCKS_PORT local_user @ localhost -p LOCAL_SSH_PORT

LOCAL:> ssh -R SOCKS_PORT: локальный хост: SOCKS_PORT remote_user @ REMOTE -p REMOTE_SSH_PORT

1

В Unix SSH уже связывает сервер socks. Просто используйте настройку DynamicForward, чтобы установить его порт, и вот вы здесь. Например:

Host REMOTE
  Hostname remote.yourcompany.com
  User you
  ServerAliveInterval 110
  ForwardAgent yes
  DynamicForward 9000

Затем в Firefox вы можете настроить прокси на socks 5, хост: localhost, порт: 9000

Вы также можете быть заинтересованы в tsocks, который является прозрачной поддержкой прокси для носков. Хотите запустить "svn update", как если бы вы были в удаленной сети? просто запустите "tsocks svn update".

Мой tsocks.conf выглядит так:

# We can access 192.168.0.* directly
local = 127.0.0.1/255.255.255.0

# Otherwise we use the server
server = 127.0.0.1

server_port = 9000

И это работает с носками SSH, я только что попробовал.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .