SSH Keys
Generate, add, and manage SSH keys for secure repository access and machine connections on Outpost.
SSH keys provide a secure, passwordless way to authenticate with Outpost. You use them to push and pull from Git repositories over SSH and to connect to Outpost Machines from your local terminal or IDE.
Outpost supports Ed25519 (recommended) and RSA key types.
Generate a New SSH Key
Ed25519 (recommended)
Open a terminal on your local machine and run:
When prompted for a file location, press Enter to accept the default (~/.ssh/id_ed25519). You can optionally set a passphrase for an extra layer of security.
RSA (legacy systems)
If your system does not support Ed25519, generate an RSA key instead:
Ed25519 keys are shorter, faster, and more secure than RSA keys. Use RSA only when Ed25519 is not supported by your environment.
Verify Your Key
Confirm the key was created by listing your .ssh directory:
You should see a key pair:
Copy the public key to your clipboard:
Add an SSH Key to Outpost
Navigate to Settings > SSH Keys in your Outpost dashboard.
Click + New SSH Key.
Paste your public key (id_ed25519.pub contents) into the key field.
Enter a descriptive name for the key (e.g., "Work Laptop" or "CI Server") and click Add new SSH key.
You can also click Generate a new SSH key directly from the dashboard. Outpost will create the key pair for you and automatically download the private key to your machine.
Use SSH with Git Repositories
Once your key is added, configure your local Git client to use SSH:
Test the connection:
A successful response looks like:
Use SSH with Outpost Machines
SSH keys are also used to connect to Outpost Machines . After adding your public key to your account, connect to a running machine:
You can also use your SSH key with VS Code Remote, JetBrains Gateway, or any SSH-compatible IDE. See Connect and Develop for IDE setup details.
File and Folder Permissions
Incorrect file permissions are the most common cause of SSH authentication failures. Ensure the following permissions are set on your local machine:
macOS / Linux:
| Path | Permission |
|---|---|
~/.ssh | chmod 700 ~/.ssh |
~/.ssh/config | chmod 600 ~/.ssh/config |
~/.ssh/id_ed25519 | chmod 600 ~/.ssh/id_ed25519 |
~/.ssh/id_ed25519.pub | chmod 644 ~/.ssh/id_ed25519.pub |
Windows:
If you are using the built-in Windows OpenSSH Client , ensure that all files in your .ssh directory are owned by your user and have no other user permissions. See the Windows OpenSSH wiki for details.
Managing Your Keys
From Settings > SSH Keys you can:
- View all SSH keys associated with your account, including their fingerprint and creation date.
- Delete a key by clicking the kebab menu next to it and selecting Delete.
Deleting an SSH key immediately revokes access for any service or machine connection that relies on it. Make sure you have an alternative key configured before removing one.
Troubleshooting
| Problem | Solution |
|---|---|
Permission denied (publickey) | Verify the correct key is added to your Outpost account and file permissions are correct. |
Could not open a connection | Check that port 22 is not blocked by your firewall or network. |
Too many authentication failures | Specify the key explicitly: ssh -i ~/.ssh/id_ed25519 [email protected] |
| Key not recognized after adding | Ensure you pasted the public key (.pub file), not the private key. |
Previous → Overview
Next Access Tokens →