Multi-hop носки прокси, как?

Я начинаю с предложения использовать jvisualVM через SOCKS . Однако у меня несколько сложная топология.

Начиная с моего ноутбука, у меня есть два промежуточных хоста, чтобы добраться до машины, которую я хочу наблюдать.

LaptopAtHome -> HostAtWork -> AWS-Bastion -> ThingToObserve

Я могу использовать ssh-add для обработки ключей, необходимых для создания этих переходов. Я не должен оставлять никаких секретных ключей SSH на AWS-Bastion. Как установить все это так, чтобы:

ssh -v -D 9696 thingtobserve.example.com 

открывает червоточину с моего ноутбука на другой конец?

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

Некоторые исследования заставили меня попробовать:

 #!/bin/sh noknown="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" ssh -A -t -t -v -L9999:localhost:9932 first ssh -A $noknown -t ec2-user@bastion ssh -A $noknown -t -D 9932 ec2-user@target 

это не позволяет «разрешить отказ».

Я пробовал простой первый шаг:

 ssh -t -v -A first ssh -A -t -v $noknown ec2-user@bastion 

и журнал показывает, что дополнительные ключи от агента не представлены «бастиону». ssh -L показывает их в начальной точке.

РЕДАКТИРОВАТЬ

Оказывается, что часть проблемы здесь заключается в том, что один из хостов в моем офисе, который я пытался использовать в качестве первого пункта назначения, имеет какую-то загадочную проблему. Если я переключусь на другой, я могу получить оболочку просто отлично, полностью. То, что я не могу получить, является прокси-сервером.

Комментарий к этому вопросу предполагает, что мульти-прыгание прокси-сервера носков, по сути, концептуально сложно, и поэтому это реальный вопрос по этому вопросу.

EDIT 2

эта страница претендует на носки с несколькими хмеями, но мне кажется, что в номерах портов может быть опечатка; Я экспериментирую.

2 Solutions collect form web for “Multi-hop носки прокси, как?”

Я бы не пытался использовать прокси-сервер multihop, но использовал промежуточный хост в качестве SSH-реле для доступа к бастиону. Оттуда вы можете настроить свой SOCKS-прокси.

Настройка доступа к хосту на работе

Сначала настройте доступ к host-at-work :

 Host host-at-work User myself 

Настройка доступа к бастиону

Затем мы настраиваем доступ к бастиону. Мы используем host-at-work в качестве SSH-реле для подключения к бастиону:

 Host bastion User myself ProxyCommand ssh host-at-work -W bastion:22 

Теперь вы можете подключиться к бастиону, используя:

 ssh bastion 

Настройка прокси-сервера SOCKS

Теперь, когда вы можете подключиться к бастиону, вы можете настроить прокси-сервер SOCKS:

 ssh bastion -D 9932 -N 

Хотите подключиться к последнему хосту на SSH?

Затем вы хотите попросить SSH использовать бастион в качестве реле:

 Host thing-to-observe User myself ProxyCommand ssh bastion -W thing-to-observe:22 

Затем вы сможете:

 ssh thing-to-observe 

Ну, я нашел ответ:

 ssh -t -v -A -D9932 -L9933:localhost:9933 -L9934:localhost:9934 FIRST-HOST ssh -D9933 -L9934:localhost:9934 -A -t -v ec2-user@SECOND-HOST ssh -D9934 -A -t -v ec2-user@THIRD-HOST 

используя 9934 в качестве порта прокси-портов.

Очевидно, что при необходимости может быть отображен на .ssh/config . кредиты на вторую ссылку в моем вопросе.

  • инициировать соединение ssh с сервера на клиент
  • SSH: туннель без оболочки на сервере ssh
  • Приложение Directx с использованием вина поверх ssh -x
  • туннелирование VNC / rdesktop над ssh
  • Как git и svn использовать существующий прокси-сервер ssh?
  • Несколько цепочек SSH (tsocks, socksify, proxycommand и т. Д.)
  • Удаленная поддержка: маршрутизация RDP через туннель ssh?
  • Как я могу определить, какие порты использовались для обратных туннелей SSH?
  • Невозможно туннелировать через ssh без команды / получения оболочки
  • Предсказание PID ранее начатой ​​команды SSH
  • SSH-туннель с VNC?
  • Как игнорировать сообщения об ошибках «Не удалось подключиться к целевому хосту»
  • Interesting Posts

    Как ускорить работу скрипта на основе поиска grep?

    ресурсы для программирования linux

    Расширьте зашифрованный раздел LUKS для заполнения диска

    Установка определенного старого пакета с зависимостями

    Как добавить команды в последовательность загрузки?

    Помощь пакетного преобразования через filelist.csv

    Perl печатает строки, соответствующие столбцам файла 1 и file2

    Как создать пользовательский регион в gnome3?

    Запись функции bash, которая работает в списке имен файлов

    Скрипт KSH, имеющий проблемы с чтением в переменных по строкам

    Как обновить раздел восстановления Fedora?

    Мне нужно проверить список каталогов, если он содержит каталог, новее, чем за 1 месяц до этого

    «Не удалось найти поддержку устройства на странице« /sys/devices/pci0000:00/0000:00:14.0/usb2 »: не поддерживается никаким плагином»

    Докер с аудио в режиме реального времени / с низкой задержкой? (для виртуальных усилителей, таких как Guitarix …)

    Создание полного доменного имени в локальной сети для систем Windows без samba

    Linux и Unix - лучшая ОС в мире.