Основной ssh, туннелирующий через универсальный Linux ssh сервер/клиент

Я - использование мой домашний ПК для соединения с корпоративным сервером с ssh выполнения чего-то как:

    ssh -p 2424 user@corporatehost.com

Затем я вхожу в систему удаленно еще раз другого сервера в корпоративной сети:

    ssh internalcorporatehost

Я могу установить туннель ssh, чтобы сделать это за один шаг или являюсь там какими-либо другими способами сделать это?

2
задан 19.09.2010, 15:51

2 ответа

Настроить user@corporatehost.com как прокси:

ssh -o 'ProxyCommand ssh -p 2424 user@corporatehost.com nc %h %p' internalcorporatehost

Это лучше всего используется через псевдоним в ~/.ssh/config, таким образом, можно просто ввести ssh ich:

Host ich
HostName internalcorporatehost
User user_name_on_internalcorporatehost
ProxyCommand ssh -p 2424 user@corporatehost.com nc %h %p

nc команда netcat, которая должна быть установлена на машине шлюза. Если это не доступно, установите любую из версий, плавающих вокруг (Вам только нужна основная функциональность). Вы, возможно, должны указать на полный путь к nc двоичный файл (например. /home/oleg/bin/nc).

Если Ваш ssh клиент является Шпаклевкой, этот ответ при Переполнении стека должен помочь.

1
ответ дан 12.01.2020, 04:14

Очень легкое решение состоит в том, чтобы просто туннелировать SSH команда через другой SSH команда с помощью -t флаг.

ssh -p 2424 -t user@corporatehost.com  ssh internalcorporatehost

Делает это очень легким, и Вам не нужна дальнейшая конфигурация.

1
ответ дан 12.01.2020, 04:14

Теги

Похожие вопросы