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
Navigate to the VM
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.pubPaste 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:
- Go to VM Details > SSH Keys
- Add or remove keys from the list
- Click Sync Keys
The platform updates ~/.ssh/authorized_keys on the VM via the Guacamole connection.
Terminal Features
Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Ctrl+Shift+C | Copy selection |
Ctrl+Shift+V | Paste from clipboard |
Ctrl+Shift+F | Toggle fullscreen |
Ctrl+Shift+R | Reconnect 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.logon the VM if you have alternate access
- Press
Enterto wake the terminal - Try
Ctrl+Shift+Rto 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