Hello,
I am trying to migrate my web application from my old vps (amazon EC2) to my new droplet, following this DO guide.
I am stuck at copying the SSH keys from the old VPS to the new one.
I logged in as ‘ubuntu’ user to my EC2 instance (ubuntu 18.04 OS) and did ssh-keygen -t rsa -b 4096 -v
.
After trying to use the ssh-copy-id
command the first time, I saw a Connection timed out
error.
I then allowed traffic to port 22 on my droplet as explained in this DO comment by doing sudo ufw allow 22/tcp
from the droplet.
However, I tried the ssh-copy-id
command again but this time I got a Permission denied (publickey)
error.
The exact command I run from the old VPS is (excluding my IP):
ssh-copy-id DROPLET_PUBLIC_IP
I also tried specifying a different user (as amazon EC2 comes with a “ubuntu” user while the droplet has “root”) but I got the same error.
ssh-copy-id root@DROPLET_PUBLIC_IP
These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.
I solved my problem by following the suggestions of @LindsayBSC with a slight change.
Here is what I did to solve the problem. If somebody could possibly explain why I had to do this I’d be thankful.
In the NEW droplet VPS
sudo nano /etc/ssh/sshd_config
Change UsePAM yes
to UsePAM no
and PasswordAuthentication no
to PasswordAuthentication yes
.
service ssh reload
In the OLD EC2 VPS
ssh-copy-id root@<DROPLET_PUBLIC_IP>
Check that you can connect to the NEW VPS from this (OLD) VPS:
ssh root@<DROPLET_PUBLIC_IP>
In the NEW droplet VPS
Repeat all the steps inverting the changes to UsePAM
and PasswordAuthentication
and reloading ssh
.
Click below to sign up and get $100 of credit to try our products over 60 days!
Hello @alexgeorgiev and thanks for the feedback. I tried with (excluding public IP)
, but I still got
root@<DROPLET_PUBLIC_IP>: Permission denied (publickey)
.It’s a problem of the droplet settings I suppose, as that is the one complaining about the permissions.
Hello,
You can follow this article:
https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys--2
The command you can use to copy the key to the new machine:
This should do the work for you! Let me know how it goes.
Alex