Generating public/private ssh keys

How to generate and use public / private ssh keys

This guide is tested on Centos 6
To generate RSA ssh key pair enter following command:

ssh-keygen -t rsa

To generate DSA ssh key pair enter following command:

ssh-keygen -t dsa

You will be prompted to specify a path to locate the keys

[root@localhost ~]# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):

You can specify it or just press "enter" to accept default location.
Now you have the keys generated. The keys are id_rsa and id_rsa.pub.
Copy id_rsa.pub to remote host(s) in user directory, for example /home/alex/.ssh/ or ~/.ssh, and rename it to authorized_keys. Copying can be done with scp:

scp id_rsa.pub alex@1.2.3.4:/home/alex/.ssh/authorized_keys

If you have an issue like "command not found" install ssh clients on both sides entering:

yum install openssh-clients

Now open /etc/ssh/sshd_config on remote host and set following attributes:

RSAAuthentication yes
PubkeyAuthentication yes 
PasswordAuthentication no

Restart ssh service

/etc/init.d/sshd restart

To add one more public key to remote host simply append the key to existing authorized_key manually or using command:

cat ~/.ssh/another_one_id_rsa.pub >> ~/.ssh/authorized_keys

If you can't get why it doesn't work make sure you have selinux disabled

 

Was this answer helpful?

 Print this Article

Also Read

Asteriks +TLS+RSTP Encrypt on centos

IN PROGRESS! this guide was gathered from official asteriks wikies...

OpenVPN 2.3.6 on Centos 6

Install Epel repository rpm -Uvh...

How to check connectivity/network speed of your VPS

If you concerned about network speed of your vps you can test it by downloading some test...

Disabling selinux

Selinux annoying you? Get it out! How to disable selinux Open its config file nano...

Backup script sample

#!/bin/bash echo "packing files in progress..." tar -cf /home/backup/root_lib-$(date...