Docs menu
Tools

SSH, port forwarding, snippets and SFTP

A full SSH client inside Halo. Hosts and keys are vault items, so they are encrypted and synced like your passwords.

Add a host

  1. Open Hosts (halo://hosts) and choose New host.
  2. Enter a label, the address and port, and the username.
  3. Choose Password or Key authentication. Add the host to a group, such as Production, to keep the grid tidy.

To connect without saving, type user@host or user@host:port in the search box at the top of Hosts and press Enter.

The Hosts page in Halo with SSH hosts grouped into Personal, Production and Staging.
Hosts grouped by environment.

Keychain

Open the Keychain tab to generate an ed25519 key or import an existing private key (with its passphrase, if it has one). Copy the public key to add it to a server's ~/.ssh/authorized_keys. Keys are stored in your encrypted vault and synced.

Terminal tabs

Click a host to open a terminal tab. Halo shows the connection steps and logs while it connects, then a full terminal that supports resizing, paste and reconnect. Terminal tabs stay connected in the background while you browse, and the address bar shows ssh user@host.

Known hosts

The first time you connect, Halo saves the server's host key fingerprint. If the key changes later, Halo refuses to connect and shows a warning until you explicitly trust the new key. Check with the server's administrator before you do.

Port forwarding

Each host can have forwarding rules of three kinds:

Each rule opens its own SSH connection with the host's saved credentials and checks the saved host key.

Snippets

Save commands you run often and paste them into any terminal tab with ⇧ ⌘ S (Ctrl Shift S on Windows). Write {{name}} where Halo should ask for a value before the command runs, for example:

sudo systemctl restart {{service}}

SFTP

Open the SFTP file browser for a host to browse folders, upload and download files, rename items and create or remove folders. Like forwarding, it uses its own connection with the host's saved credentials and host key. Downloaded files are the only thing written to disk.

What is stored where

Hosts, keys, forwarding rules and snippets are vault items: encrypted on your device and synced. Credentials are handed to the SSH client for one connection and are not written to disk by it.