У меня есть приложение, работающее на порте xxxx на сервере. Я могу войти на сервер, используя ip и порт yyyy, как это
ssh user@ip -p yyyy
Мне нужно создать TCP-соединение с приложением, работающим на порту xxxx. Я сделал что-то вроде этого
ssh -nNT -L <localport>:ip:xxxx user@ip -p yyyy
Однако, хотя локальное приложение подключается к локальному порту, сообщения никогда не достигают удаленного приложения.
Что мне нужно сделать, чтобы это заработало?
Вы должны использовать -L <localport>:127.0.0.1:<remoteport>
в вашей команде. IP-адрес, используемый в туннелировании, с точки зрения удаленного хоста. Итак, здесь вы говорите SSH перенаправить локальный порт <localpost>
к <remoteport>
на интерфейсе localhost на удаленном хосте.