You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
sshmux is a new, simple implementation of SSH reverse proxy. sshmux was initially developed for Vlab, while we'd like to expand its usage to cover more scenarios.
Build, Run and Test
sshmux requires a Go 1.21+ toolchain to build. You can use go build or make to get the sshmux binary directly in the directory.
You can run the built binary with ./sshmux. Note that you'll need to provide a valid configuration file as described here.
You can perform unit tests with go test or make test. Enable verbose logging with go test -v.
Config
sshmux requires a TOML configuration file to start up. By default it will look at /etc/sshmux/config.toml, but you can also specify a custom configuration by passing -c path/to/config.toml in the command line arguments. An example file is provided.
The sections below will introduce available options for sshmux:
General Settings
General settings configure the sshmux service. They are top-level settings in the TOML file.
Key
Type
Description
Required
Example
address
string
TCP host and port that sshmux will listen on.
Yes
"0.0.0.0:8022"
SSH Settings
SSH settings configure the integrated SSH server in sshmux. They are grouped under ssh in the TOML file.
Key
Type
Description
Required
Example
banner
string
SSH banner to send to downstream.
No
"Welcome to Vlab\n"
host-keys
[]SSHKey
Paths to SSH host key files with which sshmux identifies itself.