Skip to content

Set up SSH ​

Secure Shell (SSH) logs you in to your instance from your own computer with a key pair. The public key goes in the control panel. The private key stays on your computer.

Create a key ​

If you already have an SSH key, skip to adding it to the panel.

In your browser ​

Select Generate key, download the private key, and copy the public key. The browser makes an unencrypted private key. Use the terminal command below if you want a passphrase.

Generate an SSH key
Runs entirely in your browser. You keep the private key on your computer.

In a terminal ​

bash
ssh-keygen -t ed25519 -C "[email protected]"

Press Enter to accept the default location and enter a passphrase if you want one. If it asks to overwrite an existing key, answer n and run it again with a different file name. Overwriting deletes the old key.

Your public key is in ~/.ssh/id_ed25519.pub. Copy its contents for the next step.

Add the public key to the control panel ​

Open SSH Keys in the panel and select Upload SSH Key. Pick the workspace, paste the public key, and save.

The SSH Keys page with the Upload SSH Key button.
Upload SSH Key on the SSH Keys page.

A key you upload is trusted on every new instance in that workspace.

Sync the key to an existing instance ​

Instances created before the upload need a sync. Open the instance, then Advanced, then Sync SSH Keys. The instance must be online and running Linux or BSD.

Syncing replaces the keys on the instance

Sync overwrites the root or administrator authorized keys with your workspace keys. Keys you added to that file by hand are removed.

Pick an SSH client ​

  • Terminal. macOS, Linux, and Windows 10 and later include the ssh command.
  • Termius. A graphical client for macOS, Windows, and Linux.
  • PuTTY. A graphical client for Windows. It uses its own .ppk key format.

Connect ​

You need the instance address and the login username for your image. The address is on the instance's Networking tab, in the action menu of the public IP under Copy to Clipboard.

The first time you connect, your client asks you to trust the host key. Accept it.

From a terminal ​

Replace USER with your username and SERVER_IP with the address you copied.

bash
ssh USER@SERVER_IP

If the private key is outside your default SSH directory, pass its path with -i.

bash
ssh -i ~/.ssh/id_ed25519 USER@SERVER_IP

With Termius ​

In Vault, open Hosts and select New Host. Fill in the address and username. In the credentials, pick Key and import your private key. Save and connect.

Termius connection guide.

With PuTTY ​

Convert the key first. Open PuTTYgen, Load your private key, then Save private key as a .ppk file.

In PuTTY, enter the address, then open Connection, SSH, Auth, Credentials and pick your .ppk file. Select Open and enter your username when asked.

PuTTY key guide.

If SSH does not connect ​

The browser console works without SSH.

Next step ​

Reset passwords.