QSSH Setup
Overview¶
QSSH enables SSH connections over QUIC transport, providing better performance and reliability over unstable network connections compared to traditional TCP-based SSH.
Server Setup¶
Installation¶
- Download the latest
qssh-serverbinary from GitHub releases - Install on the remote node:
Configuration¶
Create /etc/qssh-config.toml:
[server]
quic_addr = ":4433" # QSSH listening port
ssh_addr = "127.0.0.1:22" # Local SSH daemon
[tls]
generate_certs = true # Auto-generate TLS certificates
cert_file = "/etc/qssh/cert.pem"
key_file = "/etc/qssh/key.pem"
[quic]
max_idle_timeout = "30s"
max_incoming_streams = 100
keep_alive_period = "10s"
Running the Server¶
Manually:
As a systemd service (recommended):
Create /etc/systemd/system/qssh.service:
[Unit]
Description=QSSH Server
After=network.target
[Service]
ExecStart=/usr/local/bin/qssh-server -config-file /etc/qssh-config.toml
Restart=always
User=root
[Install]
WantedBy=multi-user.target
Enable and start:
Adding QSSH Nodes in Flowctl¶
When adding a node in flowctl:
- Set Connection Type to
qssh - Set Port to
4433(or your configured QSSH port) - Configure other fields as usual (hostname, username, credential)
Tip
QSSH is particularly useful for nodes with unreliable network connections or high latency.