An SSH Key allows you to log into your server without needing a password. SSH Keys can be automatically added to servers during the installation process.
Creating an SSH key on Windows
The simplest way to create SSH key on Windows is to use PuTTYgen.
- Download and run PuTTYgen.
- Click the “Generate” button.
- For additional security, you can enter a key passphrase. This will be required to use the SSH key, and will prevent someone with access to your key file from using the key.
- Once the key has been generated, click “Save Private Key”. Make sure you save this somewhere safe, as it is not possible to recover this file if it gets lost
- Select all of the text in the “Public key for pasting into OpenSSH
authorized_keys
file”. This is what you would need to enter into the control panel to use the SSH key.
Creating an SSH key on Linux
The tools to create and use SSH are standard, and should be present on most Linux distributions. With the following commands, you can generate ssh key.
- Run:
ssh-keygen -t rsa
. For a more secure 4096-bit key, run:ssh-keygen -t rsa -b 4096
- Press enter when asked where you want to save the key (this will use the default location).
- Enter a passphrase for your key.
- Run
cat ~/.ssh/id_rsa.pub
– this will give you the key in the proper format to paste into the control panel. - Make sure you backup the
~/.ssh/id_rsa
file. This cannot be recovered if it is lost.
Adding an SSH key to your control panel
- Once you’re logged in, go to Client Area.
- Click “Add SSH Key”.
- Enter a descriptive name for the key.
- Paste in your SSH public key. This is a long string beginning with “ssh-rsa”. You should have saved this from when you generated your key.
- Click “Add SSH Key”.
- Now, when you’re deploying servers you will be able to select which SSH keys you want to add to the newly deployed server. Remember to select the keys before the initial server deployment, otherwise you will need to log into the newly created server and add the SSH keys manually.
Limitations
- SSH keys are only available for Linux and FreeBSD. They are not supported for Windows, custom ISOs, nor snapshot restores.
- SSH keys can only be managed from the control panel during deployment. You cannot use the control panel to manage them on an already-installed instance.
Connecting to a server using an SSH key from a Windows client
- Download and run the PuTTY SSH client.
- Type the IP address or Username + IP address (
user@x.x.x.x
) of the destination server under the “Host Name” field on the “Session” category. - Navigate to the “Connection -> SSH -> Auth” category (left-hand side).
- Click “Browse…” near “Private key file for authentication”. Choose the private key file (ending in
.ppk
) that you generated earlier with PuTTYgen. - Click “Open” to initiate the connection.
- When finished, end your session by pressing
Ctrl+d
.
Connecting to a server using an SSH key from a Linux client
- Check that your Linux operating system has an SSH client installed (
which ssh
). If a client is not installed, you will need to install one. - Initiate a connection:
ssh -i /path/to/id_rsa user@x.x.x.x
- When finished, end your session by pressing
Ctrl+d
.