Skip to main content

Initiate SSH tunnels in the background

Project description

bgtunnel - Initiate SSH tunnels in the background
Useful when you need to connect to a database only accessible through
another ssh-enabled host. It works by opening a port forwarding ssh
connection in the background, using threads. The connection(s) are
automatically closed when the process exits, or when explicitly calling
the `close` method of the returned SSHTunnelForwarderThread object.

Notes on default values
-----------------------

* Bind address and host address defaults to "127.0.0.1"
* SSH port defaults to 22
* Bind port defaults to picking a random available one, accessible from the
object returned by the `open` function

Usage examples
--------------

# Enable forwarding for a MS SQL server running on the remote SSH host
>>> import bgtunnel
>>> forwarder = bgtunnel.open(ssh_user='manager', ssh_address='1.2.3.4',
... host_port=1433)
>>> print(forwarder.bind_port)
59432
>>> import somesqlpkg
>>> conn = somesqlpkg.connect('mssql://myuser:mypassword@localhost:' +
forwarder.port)

# Enable forwarding for an old AS400 DB2 server accessible only via
# the remote SSH host. Multiple ports need to be opened.
>>> import bgtunnel
>>> ports = [446, 449] + range(8470, 8477)
>>> forwarders = []
>>> for port in ports:
... forwarders.append(bgtunnel.open(ssh_user='manager',
... ssh_address='1.2.3.4',
host_address='192.168.0.5',
... host_port=port, bind_port=port))
>>> print('
'.join(f.bind_port for f in forwarders))
446
449
8470
8471
8472
8473
8474
8475
8476
>>> import somesqlpkg
>>> conn = somesqlpkg.connect('mssql://myuser:mypassword@localhost:446')

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bgtunnel-0.4.1.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

bgtunnel-0.4.1-py2.py3-none-any.whl (8.4 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file bgtunnel-0.4.1.tar.gz.

File metadata

  • Download URL: bgtunnel-0.4.1.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for bgtunnel-0.4.1.tar.gz
Algorithm Hash digest
SHA256 baa1fde61093cad1619a3ba8af3e1c6a3d3363b43ad8afaa26a4718c612e41ee
MD5 4ea119f4b55999ef7b6af17491990365
BLAKE2b-256 f1c05bc59657f87eb17b2f8b9f2edacab12d9ce58a653b7f03b053360a3ffbe7

See more details on using hashes here.

File details

Details for the file bgtunnel-0.4.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for bgtunnel-0.4.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 485f1c964a388d811a4590eeede012db52596c7803ac3568096cbdf3090c5b72
MD5 aea438b588531bd4b1c046fc8aa0ef8d
BLAKE2b-256 d2d5635728d2d8fe0c1e2d0e4aedb52fa785dae80590e3d16988c9abf8e775ad

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page