下面具体来看下如何操作
二、双向免密登陆操作过程
首先,打开hadoop1虚拟机,输入指令ssh-keygen -t rsa
,作用是生成.ssh
文件夹,同时生成密钥到文件夹中
连续按下三下回车键即可(即默认设置),如有要修改的自行修改就好
同理,打开hadoop2虚拟机,输入一样的指令ssh-keygen -t rsa
,连续按三下回车键默认设置
回到hadoop1虚拟机,输入指令cd /root/.ssh
跳转到.ssh
文件夹下,再输入指令ls
查看当前目录
可以看到生成两个密钥,其中id_rsa
是私钥,id_rsa.pub
是公钥,我们需要将id_rsa.pub
公钥拷贝到hadoop2的虚拟机中
拷贝之前先重新命名,方便和其他虚拟机的公钥区分,避免把hadoop2的公钥给覆盖掉
输入指令mv id_rsa.pub id_rsa_1.pub
可以看到,文件名已经成功修改,接着就是远程拷贝到hadoop2虚拟机中
输入指令scp id_rsa_1.pub root@hadoop2:/root/.ssh/
,首次拷贝需要输入yes和对方虚拟机的密码
这时候haoop1的已经拷贝成功,我们打开hadoop2虚拟机,在上面的时候就已经给hadoop2生成了.ssh
文件夹和密钥,接着只需要
输入指令cd /root/.ssh
跳转到.ssh
文件夹
输入指令mv id_rsa.pub id_rsa_2.pub
修改公钥文件名
输入指令scp id_rsa_2.pub root@hadoop1:/root/.ssh/
拷贝到hadoop1虚拟机的.ssh
文件夹中
执行结束之后输入ls
可以看到在两台虚拟机中都各自有对方的公钥文件
| 文件名 | 介绍 |
| — | — |
| id_rsa | 私钥文件 |
| id_rsa_1.pub | hadoop1的公钥文件 |
| id_rsa_2.pub | hadoop2的公钥文件 |
| known_hosts | 首次登陆其他虚拟机时创建的历史痕迹文件 |
接着就是分别在两台虚拟机中将两个公钥文件写到authorized_keys
文件中
在hadoop1和hadoop2两台虚拟机中分别输入指令cat id_rsa_1.pub id_rsa_2.pub >> authorized_keys
写入成功之后可以输入指令more authorized_keys
查看文件信息
双向免密登陆到这里就结束了,最后我们来测试一下
hadoop1登陆到hadoop2,可以看到不用再输入密码了
hadoop2登陆到hadoop1,可以看到一样不用输入密码
输入指令exit
可以退出登录
说明:
本文章中的
ssh hadoop1
、scp ... root@hadoop1...
等命令中,可以将hadoop1
换成ip
地址也是一样的。
案例中是通过主机名(也就是hadoop1)操作的,如发生报错,应该是没有配置主机名等,详细的请看上一篇文章的介绍——Hadoop集群的搭建(一)——Liunx系统的网络配置,主机配置,多台虚拟机间的相互连通和远程操作。
同时需要注意,在最开始操作之前确保两台虚拟机之间可以互相连通(ping)。
- 本次文章分享就到这,有什么疑问或有更好的建议可在评论区留言,也可以私信我
- 感谢阅读~
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,不论你是刚入门Java开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!**](https://bbs.csdn.net/topics/618164986)
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!