Где бы я ни находился, у меня нет доступа к определенному хосту ssh (через GIT), и я хочу знать, возможно ли туннелировать его через что-то вроде прокси (даже если прокси не работает с ssh). Могу ли я подключиться к одному хосту по SSH через другой туннель? Или что-то подобное?
1 ответ
Если я правильно понимаю вопрос, вам нужно что-то вроде следующего
ssh -L 2222:host1:22 -L 2223:host2:22 -L 2224:host3:22 user@middlehost
Это команда, которую вы запускаете на своем локальном компьютере. middlehost
- это хост, на который вы можете войти с локального компьютера с помощью ssh user@middlehost
. host1
, host2
, host2
- это машины, на которые вы хотели бы войти, но не можете использовать их с локального компьютера, но вы можете сделать это с Middlehost.
После того, как вы выполнили указанную выше команду, вам нужно выполнить следующее на вашем локальном хосте , например, чтобы войти в host2
ssh -p 2223 user2@localhost
порт 2223 автоматически перенаправляется на промежуточный узел, где исходная команда пересылает его на порт 22 хоста 2. Из PoV хоста 2 это промежуточный узел, который связывается с ним.