Вот моя команда ssh
, которая устанавливает туннель с базой данных Postgres, проксируя через хост-бастион:
ssh -i C:/public/keys/my_key.pem -o "ProxyCommand ssh -W %h:%p username1@bastion_host.com" username2@ssh_host_ip -N -L 12345:postgres_host.com:5432 ssh_host_ip
Я хочу преобразовать его в скрипт Python с помощью утилиты sshtunnel
. Но трудно понять, что и где нужно передать в утилите, как показано на рисунке:
- в примере 4 по этой ссылке: https://github.com/pahaz/sshtunnel#example-4
- или эта ссылка: Двойной туннель SSH в Python
Я просмотрел несколько сообщений о переполнении стека, но не нашел простого способа сделать это. Разработчики используют переадресацию агента в качестве решения для команды Proxy. Любое прямое преобразование приведенной выше команды в sshtunnel
или Paramiko или любой другой питонический способ было бы действительно полезно.