需求
现在有3台centos7虚拟机,分别为bigdata121,bigdata122,bigdata123,用xshell工具这3台虚拟机自己和自己,以及相互之间进行免密登录。
操作
1.在xshell上设置一键控制3个窗口
在xshell菜单栏依次点击 : 选项卡>排列>水平排列
在xshell菜单栏依次点击 : 工具>发送键到所有会话
2.生成公钥和私钥
ssh-keygen -t rsa
然后按3次回车,
可以看到,在家目录上,有个隐藏的.ssh文件
会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
3.将公钥拷贝到要免密登录的目标机器上
取消步骤1的一键控制3个面板窗口,
在bigdata121上分别执行下面的命令
• ssh-copy-id bigdata121
• ssh-copy-id bigdata122
• ssh-copy-id bigdata123
执行完,在命令行分别执行 ssh bigdata121,bigdata122,bigdata123测试,看是否能切换登录上
在bigdata122执行和机器bigdata121一样的3条命令
在bigdata123执行和机器bigdata121一样的3条命令
成功的效果:
自此大功告成,按照以往,可以收工了,但是我这里要补充下理论知识,现在在看下.ssh下的文件夹
圈出来的文件就是存储免密的密码的
总结和理论
.ssh文件夹下的文件功能解释
1)~/.ssh/known_hosts :记录ssh访问过计算机的公钥(public key)
2)id_rsa :生成的私钥
3)id_rsa.pub :生成的公钥
4)authorized_keys :存放授权过得无秘登录服务器公钥
自此,真的可以大功告成了!!