Socket
Socket
Sign inDemoInstall

bgtunnel

Package Overview
Dependencies
0
Maintainers
1
Alerts
File Explorer

Install Socket

Detect and block malicious and high-risk dependencies

Install

    bgtunnel

Initiate SSH tunnels in the background


Maintainers
1

Readme

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')

FAQs


Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc