multi-tunnel allows starting and managing SSH tunnels in a straightforward manner. Create a TOML configuration file, start the service and you're all set. If you change the configuration, send a SIGHUP (aka
systemctl reload) and it'll start/stop tunnels as necessary.
Tunnels that get stopped or killed for any reason will be restarted after a 5-second delay.
For example, to tunnel httpd running on port 8080 to a remote server on 8000 and nginx running on port 8081 to 8001 on the remote server:
connection = "remote.host" [httpd] local = 8080 remote = 8000 [nginx] local = 8081 remote = 8001
The name is arbitrary and is used only for log entries.
A Prometheus endpoint to scrape is available at
x64 and armv7 downloads are provided for each tagged release.
multi-tunnel is dual licensed under the GPL v3 or later OR copyleft-next 0.3.1, see LICENSES/.