See command-line editors & IDEs documentation for more.
How to install a local SSH client depending on your operating system.
|Windows 10 1803+ / Server 2016/2019 1803+||Install the Windows OpenSSH Client.|
|Earlier Windows||Install Git for Windows.|
|Debian / Ubuntu / Mint||Run |
|RHEL / Fedora / CentOS||Run |
|Arch / Manjaro||Comes pre-installed.|
❗️ PuTTY for Windows is not a supported client
Check to see if you already have an SSH key on your local machine. The key is typically located at
~/.ssh/id_ed25519.pub on macOS / Linux, and the
.ssh directory in your user profile folder on Windows (for example
If you do not have a key, run the following command in a local terminal / PowerShell to generate an SSH key pair:
ssh-keygen -t ed25519
You will then be prompted to enter a secure passphrase, but you can leave that blank. You should now have a
id_ed25519.pub file which contains your new public SSH key.
Note: If you are using a legacy system that doesn’t support the Ed25519 algorithm, you can use rsa instead:
ssh-keygen -t rsa -b 4096
Tip: Don’t have
ssh-keygen? Install a supported SSH client.
macOS / Linux:
On your local machine, make sure the following permissions are set:
|Folder / File||Permissions|
|Any other key file|
The specific expected permissions can vary depending on the exact SSH implementation you are using. We recommend using the out of box Windows 10 OpenSSH Client.
In this case, make sure that all of the files in the
.ssh folder for your remote user on the SSH host is owned by you and no other user has permissions to access it. See the Windows OpenSSH wiki for details.
For all other clients, consult your client’s documentation for what the implementation expects.
Once you’ve created an SSH key pair, you can upload your public SSH key to Gitpod, by navigating to gitpod.io/keys where you can upload one or more public SSH keys.
Paste your public key, and give your key a memorable title so that you can remember the name of the public key later if you choose to add multiple keys, e.g. “Gitpod Bastion Host SSH Key”
Gitpod doesn’t support editing an SSH key.
To update an SSH key, delete the key and re-upload the SSH key to Gitpod.
To delete an SSH key, click the kebab menu to the right of the SSH key in the dashboard and select “delete”.
SSH Gateway facilitates connection via SSH for direct SSH access using uploaded public keys, and using the workspace owner token. Both the VS Code Desktop and JetBrains integrations use SSH Gateway to connect to Gitpod workspaces.
SSH Gateway is an intermediary service within Gitpod that proxies incoming SSH requests to the appropriate running workspaces.
If you are running a Self-Hosted Gitpod installation, you will need to ensure that:
- The installation has the SSH Gateway component configured and deployed
- Your networking and firewalls are configured to allow SSH traffic via port
See the Self-Hosted Reference Architectures for more.