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

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

У меня есть три компьютера: A, B, C. A — компьютер, на котором я работаю, C — удаленный компьютер, к которому я хочу получить доступ. Однако доступ к C возможен только через B. Только у B есть сервер ssh, а только у A есть клиент ssh.

Какую команду мне использовать (предпочтительно на A), чтобы подключиться к C (порт 80) через B? Например, B должен перенаправить все входящие порты 12345 на C:80.

Я знаю, что это распространенный вопрос, и я нашел кучу команд в Google, но ни одна из них не сработала.

После настройки мне нужно будет просто использовать localhost:5678 на A, который подключается к B:1234, а затем перенаправляется на C:80.

Спасибо.

решение1

Может быть, sshdдемон настроен на запрет переадресации портов на другие машины или вообще запретить переадресацию портов. В любом случае, правильная команда для Aдоступа Cк порту 80 выглядит следующим образом:

ssh -L localhost:5678:<ip-or-name-of-C>:80 <ip-or-name-of-B>

После sshустановления сеанса вы подключаетесь к localhost:5678, чтобы подключиться к C:80. Если вы хотите, чтобы любое входящее соединение с хостом A:5678 перенаправлялось на C:80, то удалите localhost:из команды выше.

Если переадресация портов на другие хосты отключена B, то вы можете попробовать цепочку, описанную ниже.здесь

Связанный контент