@Siegurd1

Как осуществить Reverse SSH подключение к удаленному хосту через промежуточный SSH сервер указывая только IP и Port в SSH клиенте?

Недавно я практиковался с Reverse SSH соединением, и обнаружил, что не могу подключиться к удаленному хосту ни с одним из популярных SSH-клиентов с хоста Windows.
Сетап следующий:
  • Host 1 - модем с Linux (серый IP);
  • Host 2 - Raspberry PI с SSH-сервером (статический IP);
  • Host 3 - рабочий стол Windows с SSH-клиентом (MobaXterm или PuTTY);
  • Host 2 и Host 3 находятся в одной LAN сети. Переадресация портов на роутере была сделана так, что Host 2 доступен из Интернета.

Что пробовал и что работает:
С модема (хост 1) я создаю Reverse ssh-соединение с Raspberry PI (Host 2):

ssh -p 1111 -R 1111:localhost:22 user@xx.xx.xx.xx

На Raspberry PI (Host 2) я использую эту команду для подключения к модему (Host 1):

ssh user@localhost -p 1111

И соединение работает! Но, идея состоит в том, чтобы подключиться к модему (Host 1) с десктопа Windows (Host 3) через Host 2. Я пробую соединение OpenSSH из Windows PowerShell:

ssh -A -tt -p 2222 user@192.168.1.2 'ssh user@localhost -p 1111'


и оно работает! Подключение устанавливается.

Но как прописать:
ssh -A -tt -p 2222 user@192.168.1.2 'ssh user@localhost -p 1111'
в любом другом SSH-клиенте? Например, MobaXterm с очень удобным SFTP или старый добрый PuTTY требуют заполнения только полей IP и Port.
  • Вопрос задан
  • 323 просмотра
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 1
@Fenrir89
В putty есть функционал запуска команды после подключения подробнее здесь
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы