有两台服务器,分别为
服务器A:192.168.0.116
服务器B:192.168.0.120
下面实现从服务器A登录到服务器B不需要密码
(1)在服务器A上使用 ssh-keygen 命令来实现创建公钥
使用 ssh-keygen -t rsa 来创建密钥,程序会问你存放的目录,如果不需要修改,直接回车两次即可。
默认会在/root/.ssh/目录下生成两个文件
/root/.ssh/id_rsa
/root/.ssh/id_rsa.pub
(2)将服务器A上生成的 /root/.ssh/id_rsa.pub 文件,拷贝到服务器B的 /root/.ssh 目录中,
在服务器A上执行下面的拷贝命令。
~/.ssh权限设置为700
~/.ssh/authorized_keys的权限设置为600
-----------------------------------------------
服务器A:192.168.0.116
服务器B:192.168.0.120
下面实现从服务器A登录到服务器B不需要密码
(1)在服务器A上使用 ssh-keygen 命令来实现创建公钥
使用 ssh-keygen -t rsa 来创建密钥,程序会问你存放的目录,如果不需要修改,直接回车两次即可。
默认会在/root/.ssh/目录下生成两个文件
/root/.ssh/id_rsa
/root/.ssh/id_rsa.pub
(2)将服务器A上生成的 /root/.ssh/id_rsa.pub 文件,拷贝到服务器B的 /root/.ssh 目录中,
在服务器A上执行下面的拷贝命令。
scp ./id_rsa.pub root@192.168.0.120:/root/.ssh/
(3)将公钥导入到 /root/.ssh/authorized_keys 文件中
cat ~/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
※务必将服务器B上的
~/.ssh权限设置为700
~/.ssh/authorized_keys的权限设置为600
这是linux的安全要求,如果权限不对,自动登录将不会生效
-----------------------------------------------
上述其中的(2),(3)步,可以通过ssh-copy-id这个命令一步完成。
ssh-copy-id root@192.168.0.120
ssh-copy-id自动将当前主机用户目录下面的 公钥信息,复制添加到远程主机用户目录 ~/.ssh/authorized_keys 文件中。-----------------------------------------------
(4)测试,在服务器上使用ssh命令登录服务器B,你就会发现服务器不会再向你询问密码了.
ssh root@192.168.0.120