系统:CentoS 7
简单理解:如果A计算机想免密码登录B计算机,则需要将A计算机的公钥放在B计算机的认证文件中
本文章使用的系统是默认没有防火墙的,如果有防火墙的情况下,需要先关闭防火墙
#关闭运行的防火墙
systemctl stop firewalld.service
步入正题
1、要确保两台计算机能互联互通(可以使用ping命令检验)
2、A计算机生成公钥
#进入目录
cd /root/.ssh
#进入以后查看有无其他文件
ls
#一般来说是没有其他文件的,如果有使用 rm * 删除文件
rm *
#生成公钥
ssh-keygen -t rsa
ls查看一下
cat 命令查看一下公钥的内容
3、将A计算机公钥传送给B计算机
在B计算机创建一个文件用来存放公钥
这里我创建了datanode2文件夹来存放公钥
pwd 命令查看文件夹的路径
#创建文件夹
mkdir datanode2
#进入文件夹
cd datanode2
#查看文件夹的路径
pwd
传送公钥(传送时需要输入密码)
scp id_rsa.pub root@192.168.0.101:/root/datanode2
scp命令的解析
在B计算机查看一下是否发送成功
将A计算机的公钥放到B计算机的认证文件中(此操作在B计算机上进行)
cat id_rsa.pub >>/root/.ssh/authorized_keys
A尝试免密码登陆B
到此,就实现了 A计算机免密码登陆B计算机了 如果重复操作将B的公钥放到A的认证文件则台计算机之间就可以相互免密码登陆了