Multi-tunnel: Difference between revisions

From Legoktm
(monitoring section)
(note)
 
Line 1: Line 1:
{{DISPLAYTITLE:multi-tunnel}}
{{DISPLAYTITLE:multi-tunnel}}

''Note: I'm no longer maintaining this project and have switched to using WireGuard tunnels instead.''


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 <code>systemctl reload</code>) and it'll start/stop tunnels as necessary.
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 <code>systemctl reload</code>) and it'll start/stop tunnels as necessary.

Latest revision as of 05:43, 31 January 2025


Note: I'm no longer maintaining this project and have switched to using WireGuard tunnels instead.

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.

Configuration

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.

Monitoring

A Prometheus endpoint to scrape is available at http://0.0.0.0:46581/metrics.

Download

x64 and armv7 downloads are provided for each tagged release.

License

multi-tunnel is dual licensed under the GPL v3 or later OR copyleft-next 0.3.1, see LICENSES/.

External links