虚拟机ssh免密码登陆

两台centos 6.6的虚拟机,192.168.1.19主机名为db,192.168.1.216主机名为app,以下都以root用户执行,执行当前目录为root用户的家目录。

1.db主机上添加app主机的映射

vi /etc/hosts

127.0.0.1   localhost db localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.216 app

2.app主机上添加db主机的映射

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.19 db

3.在app主机上生成公钥、私钥

ssh-keygen -t rsa -P ''

说明:以rsa算法,生成公钥、私钥,-P '',表示是空密码;该命令执行完后,会在个人主目录下生产.ssh目录,里面会有两个文件,id_rsa(私钥)和id_rsa.pub(公钥);

4.导入公钥

cat .ssh/id_rsa.pub >> authorized_keys
chmod 600 .ssh/authorized_keys

本机测试,ssh localhost,如果不需要密码可以登录,说明连接成功。

5.在db主机上生成公钥、私钥

ssh-keygen -t rsa -P '
用scp命令将公钥拷贝到app主机上

scp ./ssh/id_rsa.pub [email protected]:/root

6.app主机上导入db主机的公钥

cat id_rsa.pub >> .ssh/authorized_keys

这时候app主机上就有了app、db两主机的公钥了,再把authorized_keys拷贝到db主机上就可以了。

7.拷贝authorized_keys文件到db主机上

scp .ssh/authorized_keys root@/192.168.1.19:/root/.ssh/

8.验证

ssh 主机名    ,无需密码就可以登陆了。

你可能感兴趣的:(Linux)