LINUX.ORG.RU
ФорумAdmin

Putty link - двойной ssh

 , ,


1

1

Доброго времени суток. Набрел тут на соседнюю тему по повод ssh через 2 сервера. (ssh через ssh через ssh) Не подходит, но рядом.

В общем вот такая штука. Нужно зайти с винды по ssh на Сервер1, потом с Сервер1 по ssh на Сервер2. Используется только plink и файл с командами. На удаленные сервера ничего ставить нельзя.

Запускаю plink.exe -ssh -t server1@xxx.xxx.xxx.xxx -P 22 -pw ПарольОтСервера -v -m com_mini.job

В com_mini.job первой же командой идет коннект по ssh на Сервер2: ssh -t -t server2@xxx.xxx.xxx.xxx , далее ввод пароля и т.д.. Каждая новая команда с новой строки.

Вот такая схема. И все вводиться, но не там где надо. Проблема в том, что первая команда (переход на сервер2) из файла задания, выполняется, но следом вместо автоматического ввода пароля и запуска скриптов вызывает ручной ввод пароля, а параллельно этому, в фоновом и не видимом мне режиме на Сервер1 продолжают идти и выполняться команды, следующие со второй строки и предназначенные для Сервер2. (Это видно, если выйти из сессии на Сервере2).

Такой подход у меня удачно работал с одним ssh. Теперь же вот так. Чувствую разгадка рядом, но никак не могу понять.

Спасибо.

Не распарсил чем ProxyCommand не устраивает

zolden ★★★★★ ()
Ответ на: комментарий от zolden

Можно поподробнее как это может помочь? Путь к Сервер2 есть только через Сервер1... Командный файл формируется пакетником и скармливается plink... Погуглю что за ProxyCommand) Только повторюсь, править конфиги и ставить что-либо на Сервере1 - не представляется возможным. В наличии только ssh доступ.

mrgarrett ()

зачем всё _так_ усложнять?

и да - на винфак.

ktk ★★★★ ()

win> ssh -L7777:server2:22 user1@server1 — запустить и оставить
win> ssh -p7777 user2@localhost — и ты зашел на server2

sdio ★★★★★ ()
Последнее исправление: sdio (всего исправлений: 1)
Ответ на: комментарий от sdio

туннели

Спасибо, как запасной вариант думаю подойдет. Я думал про туннели, просто хотелось обойтись одним окном. Еще раз спасибо огромное!

mrgarrett ()
<windows> ssh root@server1
[root@server1 /]# ssh root@server2
[root@server2 /]#

Или на server1 стоит только половина пакета SSH?

KivApple ★★★★★ ()
Последнее исправление: KivApple (всего исправлений: 1)
Ответ на: комментарий от KivApple

Не совсем понятно про половину пакета SSH, вручную ssh root@server2 с сервер 1 все идет, а автоматически с паролями и переходом с сервера на сервер из plink получается: plink > ssh root@server1 > ввод пароля >[root@server1 /]# ssh root@server2 > и стопорится, прося ввести пароль ручками... Если ввести и закрыть ssh ссесию на server2, видно логи с server1, что в нем пытались выполниться команды su и пароли, (в общем все, что идут после ssh root@server2) предназначенные для ввода на server2.

Мне кажется дело в plink, ему как-то надо дать понять про последовательность действий. Он почему-то считает что все что после команды ssh root@server2 предназначено для server1.

з.ы Вариант с туннелями заработал, спасибо sdio, но 2 окна )

mrgarrett ()
Ответ на: комментарий от mrgarrett

Я и имел ввиду, что на server1 стоит не только SSH-сервер, но и SSH-клиент.

На server1 есть пакет except? С его помощью можно автоматизировать ввод пароля.

KivApple ★★★★★ ()
Последнее исправление: KivApple (всего исправлений: 1)
Ответ на: комментарий от mrgarrett

но 2 окна

зато можно scp делать прямо на server2

sdio ★★★★★ ()
Ответ на: комментарий от sdio

Пакета except нет.. Нет возможности добавлять что-либо на сервер. На оба..

mrgarrett ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.