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.
- Now a Window appears where we add public SSH key. Thus, we use OpenSSL to generate a key for Linux and macOS. We use PuTTYgen to generate a key in the Windows machine. Let us discuss both the methods used to generate a key in the customers local machine. 1) Generate SSH key with OpenSSL for Droplet.
- Aug 19, 2014 In this tutorial we will set up SSH keys to be installed automatically on a brand new Droplet, using DigitalOcean's SSH key selection.
Add your SSH private key to the ssh-agent and store your passphrase in the keychain. If you created your key with a different name, or if you are adding an existing key that has a different name, replace idrsa in the command with the name of your private key file.
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 https://my.vultr.com/sshkeys.
- 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
.
SSH, the secure shell, is often used to access remote Linux systems. But its authentication mechanism, where a private local key is paired with a public remote key, is used to secure all kinds of online services, from GitHub and Launchpad to Linux running on Microsoft's Azure cloud.
Generating these keys from Linux is easy, and thanks to Ubuntu on Windows, you can follow the same process from Windows 10. But even without Ubuntu, SSH keys can also be generated with the free and open source Windows application, PuTTy
Over the following few steps, we'll guide you through the process of generating SSH keys using both Ubuntu on Windows and PuTTY.
Requirements
Generate Ssh Key Digitalocean
All you need is a PC running Windows 10 and either of the following installed:
Generate Ssh Key Windows
- The
puttygen.exe
executable from PuTTY
Generate Ssh Key Windows Cmd
If you don't already have Ubuntu on Windows, take a look at our Install Ubuntu on Windows 10 tutorial.