Итак, я наконец получил команду на работу:
plink.exe -ssh -A -L 8162:localhost:8162 root@SV_B ssh -L localhost:8162:localhost:8161 root@SV_C
Я постараюсь быть максимально подробным.
Я пытаюсь подключиться к серверу, на котором выполняется ActiveMQ, и хочу перенаправить порт 8161 на порт 8162 на моем локальном компьютере, чтобы избежать проблем при запуске локального экземпляра ActiveMQ на моем компьютере.
Но для доступа к серверу ActiveMQ мне сначала нужно подключиться к серверу управления, который предоставляет мне доступ к сети.
И на сервере управления, и на сервере ActiveMQ мой открытый ключ для аутентификации на тех серверах использует мой личный ключ.
Я использую Pageant для того, чтобы не всегда приходилось вводить пароль для закрытого ключа.
Путь: Локальный компьютер -> Сервер управления -> Сервер ActiveMQ
Поскольку я должен администрировать и контролировать многие другие серверы таким образом, я написал пакетный скрипт для прямого доступа ко всем этим серверам с помощью моего закрытого ключа. Поэтому, естественно, я хотел бы сделать это с помощью сценария. С другой стороны, мои коллеги лишь изредка подключаются к некоторым из этих серверов и хотят использовать GUI - в данном случае PuTTY - для доступа к ним.
TL; DR
Переадресация портов через сервер перемычек (SV_B) для порта 8161 на целевом сервере (SV_C) на локальный компьютер (LM) через порт 8162 с использованием закрытого ключа для аутентификации на SV_B и SV_C с использованием PuTTY на CLI и GUI.
LM: 8162 -> SV_B -> SV_C: 8161
ОБНОВИТЬ
Я получил часть GUI работает:
Теперь вопрос в том, как мне перевести это в команду, которую я могу использовать в сценарии с putty.exe
Итак, я наконец получил команду на работу:
plink.exe -ssh -A -L 8162:localhost:8162 root@SV_B ssh -L localhost:8162:localhost:8161 root@SV_C