Python ssh клиент поверх носков (прокси) - PullRequest
3 голосов
/ 28 апреля 2011

Итак, мне нужно подключиться к SSH-серверу через прокси-носки. Я читал документы paramiko и twisted.conch, но не нашел там поддержки прокси-носков.

Ответы [ 2 ]

4 голосов
/ 28 апреля 2011

Этот сокет-обертка позволяет вам использовать статические ssh-туннели. Я нашел общее решение для моей проблемы:

  1. Используйте парамико SSHClient класс
  2. Расширьте SSHClient своим собственным классом
  3. Повторно внедрить метод connect(): Вместо использования стандартного объекта сокета мы передаем ему фиксированный прокси-сокет из пакета python sockipy
2 голосов
/ 28 апреля 2011

Paraproxy (дополнение Paramiko для SSH2 ProxyCommands) похоже, что он может это сделать.В сети нет документации, но, загрузив исходный код и изучив файл README, я обнаружил следующее:

Paraproxy является дополнением к великолепному модулю SSH2 "paramiko".Хотя paramiko действительно хорошо поддерживает SSH (2), ему не хватает функции ProxyCommand.

ProxyCommands можно использовать, например, для подключения к VPN-туннелям, но они предоставляют множество других приятных функций.

Paraproxy,после импорта подключится к классу SSHClient, предоставленному paramiko, который, в свою очередь, получит полную поддержку прокси-команд SSH.

Никаких изменений в существующем коде не требуется.

Сделайте это!1016 *

...