TUTORIAL

Access via SSH

Connect to a box with a standard SSH client after adding your public key in Portal.

This page shows the SSH path into the same box model as run9 box exec -it. If a standard ssh client fits your terminal habits better, use that.

Add your SSH public key

Generate a key locally if you do not already have one you want to use:

ssh-keygen -t ed25519 -C "run9 laptop" -f ~/.ssh/run9
cat ~/.ssh/run9.pub

That example writes the private key to ~/.ssh/run9. Keep that path in mind for the ssh -i ~/.ssh/run9 ... command below.

Then open Portal and add that public key:

  1. Open the user menu in the top-right corner.
  2. Open Profile.
  3. Find the SSH Keys card.
  4. Fill Label with a name such as Laptop.
  5. Paste the full .pub line into Public Key.
  6. Click Add key.

Find the exact SSH target for a box

Portal shows the final SSH command on each box detail page:

  1. If you are not already in the target org workspace, open the user menu, go to My Orgs, and click Open Workspace on that org.
  2. In the workspace sidebar, open Boxes.
  3. Click the target box.
  4. Read the Connect card.

That card shows three things:

  • Default SSH
  • Alternative Shell
  • Equivalent CLI

The target format depends on the org type:

Connect

Use the exact target from the Connect card.

If you generated ~/.ssh/run9 in the example above, tell SSH to use that private key:

ssh -i ~/.ssh/run9 -p 2233 <target-from-portal>

If you already use a default SSH identity or a matching ~/.ssh/config entry, you can omit -i.

Useful variants:

ssh -i ~/.ssh/run9 -p 2233 <target-from-portal> 'uname -a'
ssh -i ~/.ssh/run9 -t -p 2233 <target-from-portal> 'bash -l'

If the image does not have bash, stay with the default SSH form without a remote command and use the shell that the box already provides.

What this path is for

Product SSH in run9 stays focused on terminal shell access and one-off remote commands.

That keeps the path simple: open a shell, or run one remote command.

For file transfer, File Transfer and run9 box cp are the matching path. scp, sftp, port forwarding, and SSH editor workflows that depend on those features are outside this path today.

If SSH does not open a shell

Check these first:

  • the public key is on your user Profile in SSH Keys, not in org settings
  • the SSH target came from the target box’s Connect card
  • if you generated ~/.ssh/run9, you are using -i ~/.ssh/run9 so SSH picks the matching private key

What SSH means in run9

Product SSH is not a second runtime model. It is another way to enter a foreground exec:

  • a cold box wakes automatically when you connect
  • if you do not pass a remote command, run9 opens the default /bin/sh
  • if you disconnect, that foreground session ends
  • the Equivalent CLI line in Portal shows the matching run9 box exec -it ... command