Lets say you have a private/public key pair that you use to login to your server via SSH and you lose the public key, either it was deleted or corrupt and you don’t want to have to regenerate a new pair what options do you have? In this post I will demonstrate how to regenerate a public key from the corresponding private key that you still have.

Generate public key and store into a file

To the right of the Private Key, click on View/Download. Then click the Download Key button. Save the file to your computer and click go back. You may now use the private key saved on your computer to SSH securely to our server. If you are using PuTTY, please see the configuration steps below. Dec 18, 2019  If the command above prints something like No such file or directory or no matches found it means that you don’t have SSH keys on your client machine and you can proceed with the next step, and generate SSH key pair. If there are existing keys, you can either use those and skip the next step or backup up the old keys and generate.

It is a simple one liner command to generate a public key from a private key, so lets say our private key is named ‘user@myserver.key’ and we want to generate the public key and name it ‘authorized_keys’. Below is the command to do this.

Ssh Generate Private Key File
2
4
6
user@workstation:~$rsync-avz--remove-source-files authorized_keys user@remote_server_ip_address:/home/user/.ssh/authorized_keys
test
sent95bytes received43bytes92.00bytes/sec
user@workstation:~$

At this point our public key file is on our server where it is supposed to be in our users ‘.ssh’ directory.

Set proper permissions for public key

Lastly we will need to make sure our permissions are set properly on our public key to prevent anyone else tampering with it. We should give our key file RW, R, R permissions, below is the command to properly set permission on the key.