У меня есть три компьютера: 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
, то вы можете попробовать цепочку, описанную ниже.здесь