Настройка туннеля SSH в существующем соединении из сценария

Я хочу создать туннель SSH в существующем соединении. Сложная часть делает это из сценария (пользовательская оболочка, которую я должен разрешать пользователям, только некоторые конкретные вещи, такие как настройка этого туннеля).

Обычно вы можете делать:

<enter> ~C ssh> -L 8080:localhost:80 

Но мне нужно иметь возможность сделать это из запущенного скрипта python. Я пытался:

 print("\n~C -L 8080:localhost:80") 

но, к сожалению, это была слишком простая мысль.

Итак, как мне настроить туннель из сценария Python?

(как побочный вопрос, мне также необходимо предотвратить ssh -N -L x:host:y host.example.com , но все же разрешить настройку портов для моей настраиваемой оболочки).

  • Мне нужно RDP на сервер через обратный туннель
  • Выполнение задания Cron, но не создание туннеля
  • Указание исходящего интерфейса для туннеля SSH
  • Как git и svn использовать существующий прокси-сервер ssh?
  • Multi-hop носки прокси, как?
  • Как сделать временную трубу ssh?
  • SSH-туннель для VNC в системе Windows 7. Ошибка: открытие туннельного устройства
  • Как ограничить SSH-туннель определенным исходящим IP-адресом на SSH-сервере?
  • One Solution collect form web for “Настройка туннеля SSH в существующем соединении из сценария”

    Попробуйте использовать sshtunnel lib.

    Пример:

     from sshtunnel import SSHTunnelForwarder from time import sleep with SSHTunnelForwarder( ('localhost', 2222), ssh_username="vagrant", ssh_password="vagrant", remote_bind_address=('127.0.0.1', 3306)) as server: print(server.local_bind_port) while True: # press Ctrl-C for stopping sleep(1) print('FINISH!') 

    или CLI:

     python -m sshtunnel -U vagrant -P vagrant -L :3306 -R 127.0.0.1:3306 -p 2222 localhost 
    Interesting Posts

    Как передать параметры из xrdp в vnc viewer, например viewonly?

    Как создать пакет deb, содержащий несколько проектов?

    можно ли перечислить документацию через yum, как RPM?

    Изменение информации о пользователе в командной строке

    SNR или уровень сигнала и шума в режиме ad-hoc

    Я не могу печатать пустые строки при чтении значений из текстового файла с помощью awk в сценарии bash

    Переход на летнее время на серверах Linux

    Как установить драйвер устройства, представленный как .bin-файл?

    «. ~ / .bashrc "не устанавливает переменные, как ожидалось, в вызывающем скрипте

    Почему я установил 64-разрядный бит Ubuntu на машину Pentium 4?

    Как я могу использовать вложенные для замены if-then-fi? ("[: -f: ожидаемый двоичный оператор")

    Как печатать строки, если два поля имеют одинаковые значения?

    Обновление Fedora Core yum держится

    Часто ли выполнять сбор данных для выполнения длительной команды?

    Найти и удалить подкаталоги без ошибок?

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