Сбивание с толку или нет, вам необходимо проложить туннель. Самый простой:
ssh -L 7722:address.of.C:22 address.of.B
зарегистрирует вас в B. В то же время, он будет создан туннель между портом текущей машины 7722 (может быть любой неиспользуемый порт в течение 1024, я произвольно выбранный 7722) и порт C в 22 (порт ssh). Затем, в другом терминале,
ssh -X -p 7722 localhost
будет открыть соединение SSH на локальный порт 7722, который в настоящее время туннеля к Кассиопеяну 22. Это функционально эквивалентно ssh address.of.C
в то время как выше туннель существует.
Когда вы закончите, просто выйдите из второго соединения, чтобы выйти из C, а затем выйдите из первого соединения, чтобы деконструировать туннель.
Если у вас нет двух терминалов для работы, это немного сложнее, так как вам нужен способ, чтобы обратиться к туннелю, чтобы быть в состоянии закрыть его позже.
ssh -fNM -S /tmp/tunnel.B.to.C.control 7722:address.of.C:22 address.of.B
ssh -X -p 7722 localhost
ssh -O exit -S /tmp/tunnel.B.to.C.control address.of.B
Здесь /tmp/tunnel.B.to.C.control
произвольное имя файла в месте, где вы можете создать файл. Первая команда устанавливает туннель и выходит (вместо входа в систему), но остается в памяти и записывает свои действия в названный файл. Последняя команда затем удаляет туннель, память и файл.
Спасибо! Можете ли вы порекомендовать мне хороший учебник по SSH, посвященный теме? – BestCoderEver
Извините, не знаю, я узнал об этом с man-страницы. – Amadan