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

Iptables

Iptables is a Linux based packet filtering firewall. It is a service (daemon)...

Adding a new disk drive to Centos 6

Installing a new HDD The disk drives in Centos is named hd* or sd*. In system with only one...

Epel Centos

Some packages are missing from the base repository. This guide shows how to install RHEL EPEL...

php increase max file size upload

For increase maximum size of uploads file you should set only one setting in php.ini. Set...

NFS on Centos 6

How to install NFS on Centos 6 yum install nfs-utils nfs-utils-lib Set nfs to start...