Туннель SSH к машине в другой сети

Я пытаюсь подключиться к машине в частной сети. Я могу ssh к одной из машин в частной сети. Моя сеть - 10.4.0.x, а частная сеть - 192.168.1.x.

Я могу ssh к туннельной машине, а затем ssh до места назначения машина оттуда без проблем.

Но я просто хочу проложить туннель от моей машины до места назначения. Я использую эту команду, но она висит. Как мне указать имя пользователя машины, к которой я пытаюсь получить доступ?

ssh -N -L localhost:22:DESTINATION_MACHINE:22 BRIDGE_MACHINE_USER@BRIDGE_MACHINE

ssh -N -L localhost:22:192.168.1.4:22 bridge@10.4.0.41

1 ответ

Решение

Вы можете сделать это в два этапа. Первая команда ниже устанавливает переадресацию портов. Вторая команда устанавливает сеанс SSH с конечным целевым компьютером.

Первая команда:

ssh -N -L localhost:3306:destination:22 bridge-user@bridge-machine &
  • -N: не создавайте интерактивный вход в систему на bridge-machine, просто подключитесь и выполните переадресацию портов.
  • -L localhost:3306:destination:22, Организовать, что любой сетевой запрос, полученный через порт 22 на локальном компьютере, будет переадресован через этот сеанс SSH и повторно выдан на bridge, поскольку bridge можно направить в destinationПереоформленный запрос будет работать. Мы выбираем 3306 потому что нам нужен номер порта, который в настоящее время не используется. Мы используем 22 в качестве пункта назначения, потому что это известный порт для SSH.
  • bridge-user@bridge-machine - Поскольку этот сеанс SSH заканчивается в bridge, нам нужно bridge полномочия.
  • & - запустить в фоновом режиме, чтобы мы могли выдать вторую команду.

Вторая команда:

ssh destination-user@localhost -p 3306
  • destination-user - Поскольку конечная точка этого соединения destinationнам нужны учетные данные оттуда.

  • @localhost - Мы на самом деле подключаемся к форвардной службе, установленной на шаге 1.

  • -p 3306 - Команда из шага 1 организовала, чтобы любые запросы поступали на localhost:3306 будет переиздан из bridge в destination:22, Так мы относимся localhost:3306 как местный псевдоним для destination:22,

Другие вопросы по тегам