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

Add your SSH key to your server and remove root login

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