How to copy your SSH key to a new Digital Ocean Droplet

Add your SSH key to your server and remove root login

ssh
root login
digital ocean
ssh key
server

Published 4 years ago

If like me you created a Digital Ocean Droplet without adding the key in their control panel, here's how to do it when you've already created a droplet:

In a new terminal:

ssh-copy-id username@serverIp

You should then get:

/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/c/Users/YourUser/.ssh/id_rsa.pub" /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys username@serverIp's password: Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'username@serverIp'" and check to make sure that only the key(s) you wanted were added.

Then disable being able to login with your root account with a password.

Edit:

/etc/ssh/sshd_config

Find: PermitRootLogin yes

Change: PermitRootLogin without-password

Other ways

Add your ssh key by making a ssh directory.

mkdir ~/.ssh

Then paste in your public key to authorized_keys and save

vim ~/.ssh/authorized_keys