Как использовать Python для настройки туннеля, соответствующего команде ssh (для бастиона)? - PullRequest
0 голосов
/ 02 октября 2018

Как настроить туннель с использованием кода Python, который может заменить эту команду?

ssh -N -L 3307: xxxxxx.rds.amazonaws.com: 3306 ec2-user @ XX.XXX.XX.XX -i ~ / .ssh / bastion_key.pem

1 Ответ

0 голосов
/ 02 октября 2018

Вы можете использовать библиотеку sshtunnel.

Например:

from sshtunnel import SSHTunnelForwarder

with SSHTunnelForwarder(
    ('XX.XXX.XX.XX', 22),
    ssh_username='ec2-user',
    ssh_pkey='~/.ssh/bastion_key.pem',
    remote_bind_address=('xxxxxx.rds.amazonaws.com', 3306),
    local_bind_address=('0.0.0.0', 3307)
) as tunnel:
    # do stuff with tunnel
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...