ssh -D
может сделать порт socks на локальной машине, который передает трафик на удаленный, а затем в другие места.
ssh -L port:host:hostport
, слушайте порт на локальной машине, передавайте трафик на "host: hostport" с точки зрения удаленной машины.
ssh -R port:host:hostport
является аналогом ssh -L
, который прослушивает порт на удаленной машине и передает трафик на «host: hostport» с точки зрения локальной машины.
Но каков аналог ssh -D
, то есть, как открыть порт socks на удаленной машине, который будет передавать трафик на локальный, а затем в другие места?
networking
ssh
tunnel
ssh-tunnel
socks
Ягода
источник
источник
Ответы:
С
-D
& у-L
вас есть возможность общаться в любом случае между двумя машинами.Так...
-R
для создания прослушивающий порт на удаленной машине, указывающий на sshd локальной машины.-D
на удаленной машине, указав на порт, который вы создали выше.Я думаю, что заполнение ниже заставит это работать ...
ssh remotehost -R remoteport:localhost:localport "ssh -D 9050 localhost -p remoteport"
'
remotehost
', 'remoteport
' & 'localport
' в вышеуказанном случае необходимо изменить. Сокс-прокси будет сформирован на 9050.источник
Это можно сделать прозрачно с помощью этого фрагмента в ~ / .ssh / config:
Детали
Мы хотим реверс DynamicForward. Это достигается с помощью двух команд ssh:
ssh -D 3128 localhost
ssh -R 3128:localhost:3128 target
Таким образом, у цели есть туннель SOCKS к клиенту SSH.
Я использовал классический способ объединения ssh для достижения удаленной цели через промежуточные хосты, так что создание туннеля SOCKS прозрачно обрабатывается при входе в цель. Первый трюк ProxyCommand + nc является обязательным, потому что -W подразумевает ClearAllForwardings.
источник
Нет возможности предоставить обратный туннель socks с OpenSSH, поэтому вы должны запустить команду ssh, предоставив прокси socks на «удаленной» машине.
Если удаленный компьютер не может подключиться по ssh к локальному компьютеру, сначала создайте ssh-соединение с локального на удаленное, которое перенаправляет порт 22, например, на 2222. Затем удаленный компьютер может подключиться через ssh к локальному компьютеру через порт 2222.
источник
начиная с OpenSSH 7.6
ssh (1): добавлена поддержка обратной динамической пересылки. В этом режиме ssh будет выступать в качестве прокси-сервера SOCKS4 / 5 и переадресовывать соединения на пункты назначения, запрошенные удаленным клиентом SOCKS. Этот режим запрашивается с использованием расширенного синтаксиса для параметров -R и RemoteForward и, поскольку он реализован исключительно на клиенте, не требует обновления сервера для поддержки.
https://www.openssh.com/txt/release-7.6
источник
ssh -R 127.0.0.3:1080 remote
), в настоящее время вы можете привязать обратный прокси-сервер SOCKS только к порту.