Manually SSHing is an advanced escape hatch. Thunder Compute already handles SSH, port forwarding, and key rotation through the CLI, VS Code extension, and console. Stick to the standard connect flows unless you have existing infrastructure that relies on raw SSH.
Save an SSH key
The VS Code extension uses the same saved keys as the console. Open Authentication → SSH Keys (Advanced) in the console to add or remove organization keys.
Saved keys live at the org level, so everyone on your team can reuse them when creating instances.
Attach a key when creating an instance
The create-instance dialog in the VS Code extension lets you pick any key from your saved list. New windows reuse it automatically.
Instances include the selected public key in authorized_keys at boot. You can add keys later via the Add SSH key to instance API endpoint.
SSH manually
-
Find the instance IP and SSH port from the instance details in the Thunder Compute sidebar, or run
tnr status in a terminal.
-
From your local machine, run SSH with the private key that matches the saved public key, the reported port, and the
ubuntu user:
ssh -i ~/.ssh/id_ed25519 -p <port> ubuntu@<instance-ip>
Replace ~/.ssh/id_ed25519 with your private key path. Substitute <port> with the value from instance details. Most images use the ubuntu user; check your template if it differs.
-
Optional: use the command with JetBrains Gateway or any remote-SSH client.
Quick troubleshooting
- Permission denied: make sure you are connecting as
ubuntu, using the -p <port> from instance details, and that the matching private key exists locally.
- Connection timed out: re-check that you copied the correct port; the IP stays stable, but the exposed port can change if the instance is cycled.
- Host verification failed: remove the old entry from
~/.ssh/known_hosts and retry. New IPs will change fingerprints.
- Still stuck? Double-check the IP, port, and key, or send a message in Discord with the SSH output.