Skip to main content

SSH Forward Daemon

Project description

SSH port forwarder daemon

Daemon

Install forwarderd[daemon] and run forwarderd.__main__ any suitable way

Example for Linux, will create systemd service "forwarderd":

mkdir forwarderd
cd forwarderd
python3 -m venv .  # python version should be 3.7 or higher
source bin/activate
python3 -m pip install pip --upgrade
python3 -m pip install pip forwarderd[daemon]
python3 -m forwarderd --systemd-install
systemctl start forwarderd

Usage

Install forwarderd, then request tunnel spawn such way

from forwarderd import spawn_tunnel, SpawnTunnelRequest

spawn_resp = await spawn_tunnel(
    SpawnTunnelRequest(
        ssh_addr='hostname:port',  # port is optional, 22 by default
        ssh_user='user',
        ssh_identity_file='/root/.ssh/forward_key',  # must be accessible for daemon
        remote_addr='localhost:80',
    )
)
spawn_resp.host  # local bind host
spawn_resp.port  # local bind port

If local_addr not specified, host is localhost and paramiko will decide which port to use

There is also Go client

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

forwarderd-13.tar.gz (6.2 kB view hashes)

Uploaded Source

Built Distribution

forwarderd-13-py3-none-any.whl (6.4 kB view hashes)

Uploaded Python 3

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