Hanzo

Browser Terminal

Access VMs via a WebSocket-based browser terminal powered by Apache Guacamole.

Hanzo Platform includes a browser-based terminal that lets you SSH into any managed VM without installing an SSH client or exposing port 22 to the public internet.

Architecture

The terminal is powered by Apache Guacamole, providing a secure WebSocket bridge between your browser and the VM:

Browser (WebSocket) --> Platform Gateway --> Guacamole --> SSH --> VM
  • No client software required -- works in any modern browser
  • No public SSH port needed -- the gateway connects over the private network
  • Session recording -- terminal sessions can be recorded for audit
  • Clipboard support -- copy/paste between your local machine and the remote terminal

Opening a Terminal Session

Go to Virtual Machines and click the VM you want to access.

Click Terminal

On the VM detail page, click the Terminal tab. A new terminal session opens in your browser.

Authenticate

The terminal connects using the SSH key associated with the VM. No password prompt is needed if key-based auth is configured.

The terminal opens as the default user for the OS image (e.g., ubuntu for Ubuntu, root for Debian/Hetzner).

SSH Key Management

Hanzo Platform maintains a centralized SSH keyring. Keys are synced to VMs at creation time and can be updated on running instances.

Adding a Key

Go to SSH Keys

Navigate to Settings > SSH Keys > Add Key.

Paste Your Public Key

# Copy your public key
cat ~/.ssh/id_ed25519.pub

Paste the contents and give it a name (e.g., work-laptop).

Save

The key is stored in your account and available when creating new VMs.

Generating a New Key Pair

If you don't have an SSH key:

ssh-keygen -t ed25519 -C "you@example.com"

Never share your private key. Only upload the .pub file to Hanzo Platform.

Updating Keys on Running VMs

To add or remove keys on an existing VM:

  1. Go to VM Details > SSH Keys
  2. Add or remove keys from the list
  3. Click Sync Keys

The platform updates ~/.ssh/authorized_keys on the VM via the Guacamole connection.

Terminal Features

Keyboard Shortcuts

ShortcutAction
Ctrl+Shift+CCopy selection
Ctrl+Shift+VPaste from clipboard
Ctrl+Shift+FToggle fullscreen
Ctrl+Shift+RReconnect session

Window Resizing

The terminal automatically resizes when you resize your browser window. The remote PTY dimensions update in real time.

Multiple Sessions

Open multiple terminal tabs to the same VM by clicking Terminal > New Tab. Each tab is an independent SSH session.

Troubleshooting

Terminal won't connect

  • Verify the VM is in Running state
  • Check that the VM's security group/firewall allows SSH from the platform gateway
  • Try restarting the VM from the dashboard
  • Confirm the correct SSH key is assigned to the VM
  • Click Sync Keys on the VM detail page to re-push keys
  • Check /var/log/auth.log on the VM if you have alternate access
  • Press Enter to wake the terminal
  • Try Ctrl+Shift+R to reconnect
  • Clear browser cache and reload the page

Latency

The terminal streams over WebSocket. For best performance:

  • Use a wired connection or stable Wi-Fi
  • Choose a VM region close to your location
  • Avoid running the terminal through a VPN if possible

How is this guide?

Last updated on

On this page