SSH Tunnel Manager
DocumentationOpenClose
Start03

Quick start

A working local forward in five minutes — from picking a host to actually connecting through it.


Before you start

You can log in to the target server from a terminal (key or ssh-agent already configured):

ssh dev "echo ok"

If that prints ok, you are set. If you only have a password, that works too — the app will ask for it.

Five steps

  1. New forward: click “New forward” in the top right.
  2. Pick a host: the dropdown lists Host aliases from ~/.ssh/config, for example dev.
  3. Remote address: remote host defaults to localhost; enter the port of the service you want, say PostgreSQL on 5432.
  4. Local port: defaults to the same number, or pick any free port such as 4096.
  5. Start: click “Start forward”. The dialog previews the exact ssh -N -L … command that will run.

On success a row appears in the list with the status running. That happens only after the local port is really listening, so a slow server takes a little longer — but it is never reported as ready early.

The new-forward dialog: host, remote host, ports, bind address, and a live preview of the ssh command The new-forward dialog in the dark theme
New-forward dialog · the app interface is currently Chinese-only

Verify

Connect to the local port from a terminal:

Test-NetConnection 127.0.0.1 -Port 4096
nc -vz 127.0.0.1 4096

Or just point your client at 127.0.0.1:4096 — to a local program it is simply a local database.

Choosing a bind address

Bind addressWho can connectTypical use
127.0.0.1This machine onlyDefault, safest
localhostSame as 127.0.0.1Clients that insist on a hostname
::1Local IPv6When the target only listens on IPv6
0.0.0.0Anyone on your LAN who can reach this machineDemos for colleagues or phones; use with care

When the remote host is localhost or 127.0.0.1, the bind address follows it; switching to 0.0.0.0 is a manual choice.

Why not default to 0.0.0.0 Binding to 0.0.0.0 lets anyone on your network reach the database directly. Unless you need that, keep 127.0.0.1.

What the status means

StatusMeaning
RunningThe PID is non-zero and that PID really is an ssh process
StoppedThe PID is zero, or it has been reused by another program

The first load briefly shows a skeleton screen, then the list refreshes every 3 seconds — or immediately when you click “Refresh”.