ssh-copy-id from old VPS (ec2) to new droplet gives Permission denied (publickey) error
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):
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.
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.