Bootstrap

Hadoop集群搭建(二)——Linux系统SSH远程双向免密登陆

拷贝之后,将hadoop1的公钥通过cat指令写到到authorized_keys文件中,即可完成免密登陆。hadoop2虚拟机要免密登陆hadoop1同理

下面具体来看下如何操作

二、双向免密登陆操作过程

首先,打开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文件中

hadoop1hadoop2两台虚拟机中分别输入指令cat id_rsa_1.pub id_rsa_2.pub >> authorized_keys

写入成功之后可以输入指令more authorized_keys查看文件信息

在这里插入图片描述

双向免密登陆到这里就结束了,最后我们来测试一下

hadoop1登陆到hadoop2,可以看到不用再输入密码了

在这里插入图片描述

hadoop2登陆到hadoop1,可以看到一样不用输入密码

在这里插入图片描述

输入指令exit可以退出登录

说明:

本文章中的ssh hadoop1scp ... root@hadoop1...等命令中,可以将hadoop1换成ip地址也是一样的。

案例中是通过主机名(也就是hadoop1)操作的,如发生报错,应该是没有配置主机名等,详细的请看上一篇文章的介绍——Hadoop集群的搭建(一)——Liunx系统的网络配置,主机配置,多台虚拟机间的相互连通和远程操作。

同时需要注意,在最开始操作之前确保两台虚拟机之间可以互相连通(ping)。


  • 本次文章分享就到这,有什么疑问或有更好的建议可在评论区留言,也可以私信我

最后的话

最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!

资料预览

给大家整理的视频资料:

给大家整理的电子书资料:

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

详情docs.qq.com/doc/DSmdCdUNwcEJDTXFK

给大家整理的电子书资料:

[外链图片转存中…(img-8Cy3Uie3-1724420673369)]

如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!

详情docs.qq.com/doc/DSmdCdUNwcEJDTXFK

;