Skip to content

Connect over SSH

SSH gives you your instance in your own terminal, with your own editor, dotfiles, and tooling. It takes two pieces of setup: a public key on your account, and SSH enabled on the template.

Generate a key pair locally if you don’t already have one. This works on macOS, Linux, and Windows PowerShell:

Terminal window
ssh-keygen -t ed25519 -C "your_email@example.com"

That writes ~/.ssh/id_ed25519 (private) and ~/.ssh/id_ed25519.pub (public).

Copy the public key and paste it into the SSH Public Key box on your Profile page, then click Save Key.

Terminal window
cat ~/.ssh/id_ed25519.pub

Adding an SSH public key in Profile

When creating a template, turn on SSH Access (advanced) before saving. Only instances launched from SSH-enabled templates are reachable this way, and the setting can’t be added to a running instance.

The SSH Access toggle in the template form

After the instance starts, the ready dialog — and Active Instance in your Profile — shows the connection details: a copy-ready command, plus host, port, and username.

SSH connection details for a running instance

Terminal window
ssh <user>@<host> -p <port>

Substitute the values shown on the page. On first connect, type yes to accept the host fingerprint.

Some images don’t ship an SSH server. Open a JupyterLab terminal and start one:

Terminal window
sudo apt update
sudo apt install -y openssh-server
mkdir -p /run/sshd
/usr/sbin/sshd

Then retry the connection from your local terminal.