Назад | Перейти на главную страницу

Перенаправление SSH с моего ноутбука на виртуальную машину, расположенную на удаленном сервере

У меня есть удаленный сервер, на котором размещена виртуальная машина, на которой запущена веб-служба на порту 8000.

Я хочу иметь доступ к веб-службе из веб-браузера на моем ноутбуке, зная, что:

  1. Со своего ноутбука я могу подключиться к удаленному серверу по SSH
  2. С сервера я могу подключиться к виртуальной машине по SSH
  3. Веб-служба недоступна напрямую с сервера.
  4. Ключи ноутбука и сервера разные.

Если бы веб-служба работала непосредственно на сервере, я бы сделал следующее:

ssh -L 8000:localhost:8000 user@server

Что перенаправляет все, что я делаю на localhost: 8000, в удаленную службу через SSH. Как сделать что-то подобное для ВМ?

Вы можете создавать туннели SSH через несколько переходов. Я не уверен, что понимаю ваш 4-й пункт. Я предполагаю, что вы имеете в виду, что на сервере есть закрытый ключ SSH, который разрешен открытым ключом на виртуальной машине.

Если это не В этом случае вы можете просто перейти к нему:

ssh -J server.ip -L 8000:localhost:8000 vm.ip

Если это так, вам нужно сделать что-то вроде

ssh -t user@server -L 8000:localhost:8000 ssh -t user@vm -L 8000:localhost:8000

Таким образом, вы просто объединяете команды SSH в цепочку и можете объединять несколько команд, пока вы отслеживаете туннелирование.