SSH реле без открытия портов

SSH реле без открытия портов

У меня есть машины A, Bкоторые могут получить доступ к Relayмашине через ssh, но не наоборот. Могу ли я получить доступ к машине Bчерез Aмашину Relay, не открывая порты, за исключением 22того, что этот порт единственный доступный?

Например, возможным решением было бы sshиз Bв Relayи открытие файлов для чтения stdinи записи stdout. Подключение из Aк relayпозволяет читать и записывать в эти файлы для связи с B.

Есть ли способ сделать это с помощью инструментов командной строки?

решение1

Ну, очевидно, что на реле уже открыт порт, иначе ssh был бы невозможен.

Единственный способ, который я вижу, — это чтобы B подключился к реле по ssh и вместе с этим открыл обратный туннель, который затем может использовать A. Вам нужна опция «-R».

решение2

Вот один из способов:

  1. ssh A для ретрансляции и переадресации локального порта (например, ssh -L 6022:127.0.0.1:6022). Эта команда переадресует локальный порт 6022 на A на порт 6022 на ретрансляции через SSH.
  2. ssh B для ретрансляции и переадресации удаленного порта на локальный ( ssh -R 6022:127.0.0.1:22) Эта команда переадресует удаленный порт 6022 на ретрансляторе на локальный порт 22 на B
  3. Теперь на компьютере A подключитесь к порту 6022 локального хоста с помощью SSH и сможете войти в B.

Связанный контент