переадресация портов ssh (туннелирование) в linux

У меня есть конкретный сценарий, который я хочу решить. В настоящее время я подключаюсь к хосту через переадресацию портов:

 laptop -> gateway -> remote_server_1

и еще один хост:

 laptop -> remote_server_2

с входом без пароля, работающим на обоих. Ни один из удаленных серверов не виден внешнему миру. Теперь я запускаю службу на удаленном_сервере_2, к которой я хотел бы иметь доступ на удаленном_сервере_1. Я предполагаю, что мне нужно настроить перенаправление обратного порта с удаленного_сервера_1 на мой ноутбук, а затем на удаленный_сервер_2, но я не уверен, как это сделать. Кто-нибудь уже сталкивался с такой ситуацией?

Изменить: полное решение на случай, если оно понадобится кому-то еще:

mylaptop$ ssh -L 3001:localhost:3000 server_2
server_2$ netcat -l 3000

Затем настройте туннель через gateway в server_1:

ssh -t -t -L 3003:server_1:22 gateway

Затем получите доступ к нему из server_1:

ssh -R 3002:localhost:3001 -p3003 localhost
echo "bar" | nc localhost 3002`

и эй вуаля server_2 показывает bar :-)


person tdc    schedule 10.11.2011    source источник


Ответы (1)


Вы должны сделать именно так, как вы описали. Настройте сервер на server_2.

mylaptop$ ssh -L 3001:localhost:3000 server_2
server_2$ netcat -l 3000

Затем доступ к нему из server_1.

mylaptop$ ssh -R 3002:localhost:3001 server_1
server_1$ echo "foo" | netcat localhost 3002

server_2 покажет foo.

person Didier Trosset    schedule 10.11.2011
comment
Это почти работает, за исключением того, что мне также нужно туннелировать на server_1. Итак, если я сделаю: mylaptop$ ssh -L 3003:gateway:3002 server_1 и mylaptop$ ssh -R 3003:localhost:3000 -p3003 localhost, правильно ли я понимаю? К счастью, на server_1 нет netcat (у меня нет прав администратора на нем) - person tdc; 10.11.2011
comment
Извините, только что понял, что netcat там nc. Во всяком случае, это еще не совсем работает. - person tdc; 10.11.2011
comment
Я дам вам принятый ответ, так как он дал мне достаточно подсказок, чтобы продолжить - полный ответ в моем редактировании. - person tdc; 10.11.2011