Cómo conectarse a una base de datos a través de un túnel de Paramiko (o paquete similar)

Estoy teniendo serios problemas al configurar un túnel adecuado en paramiko para habilitar una conexión de base de datos. He revisado el ejemplo ‘forward.py’, pero no entiendo cómo vincular la conexión de la base de datos con él. Cualquier puntero será muy apreciado.

Creo que necesito algo de lo siguiente:

t = paramiko.Transport((hostname, port)) t.connect(username=username, password=password, hostkey=hostkey) c = paramiko.Channel(t) #something about assigning a local port to this connection connection = psycopg2.connect(connectionstring) #and do my stuff connection.close() c.close() t.close() 

si ha creado su túnel ssh utilizando el script forward.py; puede usar el túnel ssh para conectarse a postgresql de esta manera:

 conn = psycopg2.connect(database="test", host="localhost", port=) 

También tuve problemas serios para hacer que paramiko funcionara, pero terminé haciéndolo con otra biblioteca (sshtunnel) que envuelve y simplifica la tunelización de paramiko.

Puede verificar mi respuesta en otra pregunta similar con algún código de ejemplo para usarla.