本例中A主机要免密访问B主机
主要原理是A主机生成私钥和公钥,并将公钥放到B主机的指定位置,可实现A主机对B主机的免密访问
1.在A主机创建公钥 ,私钥
输入命令:
ssh-keygen -t rsa
中间出现所有提示不用管,直接回车
2.查看生成的秘钥
进入 /root/.ssh 文件夹
可有看到如下的文件
设置.ssh文件夹权限为700
chmod 700 -R /root/.ssh/
3.修改A主机配置,开启免密登录
vi /etc/ssh/sshd_config
打开如下位置的注释
4.重启服务
systemctl restart sshd
5.复制公钥id_rsa.pub到B主机并追加到/root/.ssh/authorized_keys 文件
例如先将公钥复制到B主机的/root/.ssh/目录,再执行如下命令完成追加(不影响其他的授权)
cat ./id_rsa.pub >> ./authorized_keys
也可以使用scp命令远程追加到B主机的/root/.ssh/authorized_keys 文件,命令如下
scp -p ~/.ssh/id_rsa.pub root@192.168.0.123:/root/.ssh/authorized_keys
追加后登录B主机修改/root/.ssh/authorized_keys文件权限为600
chmod 600 /root/.ssh/authorized_keys
6.然后输入远程命令可以在A主机免密登录B主机了
ssh root@192.168.0.123