Как отправить команды на «внутренний» сеанс SSH?

32

Представьте себе сценарий, когда я захожу на сервер (который мы назовем «Уоллес») с моей локальной машины, а оттуда я sshна другой сервер (который мы назовем «Gromit»):

laptop ---ssh---> Wallace ---ssh---> Gromit

Затем висит ssh-сессия от Уоллеса до Громита, и я хочу его убить. Если я вхожу, ~.чтобы убить ssh, он убивает сеанс ssh с моего ноутбука Уоллесу, потому что ~он перехватывается этим ssh-сеансом, а команда .принимается за команду, чтобы завершить сеанс. Как отправить команду на сессию ssh между Уоллесом и Громитом? Как мне убить мой "внутренний" ssh?

иконоборец
источник
К сведению: некоторые раскладки клавиатуры могут потребовать двойного нажатия клавиши «~» для печати одного символа «~». Я часто использую экран, поэтому, когда соединение ssh потеряно, я могу просто запустить другую оболочку, убивающую этот сеанс.
математика

Ответы:

42

Добавьте еще тильду (т. Е. Тип ~~.). Каждая последующая тильда съедается самым внешним ssh-сеансом, который еще не съел один, но если следующий символ является другим тильдой, он передается следующему сеансу.

Если из gromit 1 вы ssh'ed к третьему хосту (назовем это wensleydale), то ~~~.вы прекратите сеанс в wensleydale и вернете вас к приглашению gromit.

1 И какой это отличный сервер; как часто я слышал замечание разработчика "взломать хост, громить"?

MadHatter поддерживает Монику
источник
2
Связанный: Песня Telnet
voretaq7
1
О, это чудесно; Я не могу поверить, что я не сталкивался с этим раньше.
MadHatter поддерживает Монику
Было бы замечательно, если бы был какой-то способ получить визуальную обратную связь о том, как далеко вы находитесь в стеке, в случае, если у вас есть laptop --> Wallace --> Gromit --> Shaun --> Timmyили что-то в этом роде сумасшедшее ...
iconoclast
-2

Вы можете выполнить произвольные команды и перехватить вывод из самой внутренней оболочки в переменную

export output=`echo some_cmd | ssh user@host |  echo some_cmd2 | ssh user2@host2`
Томас Уодли
источник
1
Это очень интересно, но я не уверен, как это связано с вопросом. Вы можете объяснить?
иконоборчество