Adding public key to an existing droplet failed

September 28, 2015 592 views
DigitalOcean Getting Started CentOS

I created a droplet and selected the "ssh key" option, without actually generating the key pair. After the droplet was created, I think I need to add a public key I locally generated on my Linux machine to the droplet, but I can't make it work. I generate the key pair locally, and executed:

ssh-copy-id -i .ssh/ root@my_ip_address.

Now I check on the authorized_keys on the droplet, and found there are two keys, one being the added one.

But when I tried to ssh the the server, I am still asked to enter a password. How can I make it work? Can I remove the .ssh/authorized_keys on the droplet and copy my local public key file to the remote droplet?

It has been very annoying. My machine is CentOS 7. Thanks.

1 Answer


When you log in with SSH, do you identify the key with ssh -i /path/to/private/key? This will ensure you are using the right SSH key when logging in. Sometimes, if you have alot of key pairs; the system will fail due to too many keys being passed. Make sure with the above command you change /path/to/private/key to the actual path of your private key. I imagine it's likely .ssh/idjenkinsrsa based on your public key path.

Specifying the private key you want to use, that matches the public key you added, will fix this.

As for if you can remove the keys and add them, sure! Just remove the 2 keys from the ~/.ssh/authorized_keys file on the droplet and then re-add your key. You can even add it manually if you want, but just copying it and pasting it into the file.

Have another answer? Share your knowledge.