Hadoop第一式:配置Linux环境之免密配置及SSH原理
一、配置SSH免密登录
进入/.ssh目录,执行密钥生成指令
ssh-keygen -t rsa (rsa为默认加密格式)
然后会出现四个提示,让你选择密钥保存路径、指纹、拍照啥的,不用管它直接回车过去
因为如果你配置了后下次登录还要你验证,也就失去了集群配置ssh免密的意义
然后成功了之后,把公钥复制到远程机器上(随便放哪里) 公钥名称为id_rsa.pub,另一个是私钥id_rsa
在远程机器上.ssh目录下,有个叫authorized_keys的文件(没有自己创建一个 指令为touch 文件名)
注意:修改权限 需要-rw-------权限,指令为
chmod 600 authorized_keys
然后继续在.ssh目录下输入指令把公钥追加到authorized_keys,指令为
cat ../id_rsa.pub >> ./authorized_keys
现在即可实现免密SSH登录
虽然博主是个伪分布式架构,但是hdfs启动不知道是在本机,还是默认远程ssh连接,所以效果是一样的
二、SSH原理
1.本机生成密钥和公钥
2.把公钥传递给远程主机
3.主机把公钥追加进免检名单
---------------------上面为第一次配置的时候-----------------------配置完毕以后只用下面的步骤-------------------------
4.本机请求远程主机
5.远程主机去免检名单里找到所属公钥
6.生成用公钥加密后的字符串传回本机
7.本机使用私钥进行解密
8.本机把解密后的信息传给远程主机
9.远程主机进行验证
10.登录成功
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现