如果有玩过Hadoop的小友,曾经可能被搭建Hadoop集群环境的阴霾所支配。
里面用到了咱们今天讲的ssh免密登录,用于linux集群之间的免密切换。
简单的扯一下今天用到的RSA算法:
RSA加密算法是一种非对称加密算法,RSA密码体制是一种公钥密码体制,公钥公开,私钥保密,加密解密算法也是公开的。由公钥加密的内容只能由私钥进行解密,并且由私钥加密的内容只能由公钥进行解密。即:RSA的一对公钥、私钥都可以用来加密和解密,并且一方加密的内容只能由对方进行解密。
服务器列表[两台为例]
A:192.168.102.22
B:192.168.102.110
假装A为客户端,B为服务器
one、客户端请求连接服务器,服务器将一个随机字符串发送给客户端
two、客户端根据自己的私钥加密这个随机字符串之后再发送给服务器
three、服务器接受到加密后的字符串之后用公钥解密,如果正确就让客户端登录
1、 在主机A生成公钥私钥
ssh-keygen -t rsa
直接回车
标红:生成的公钥私钥所在目录
查看公钥私钥
cd ~/.ssh/
公钥:id_rsa.pub
私钥:id_rsa
2、在主机B生成公钥私钥
ssh-keygen -t rsa
直接回车
查看公钥私钥
cd ~/.ssh/
公钥:id_rsa.pub
私钥:id_rsa
3、将主机A的公钥写入文件authorized_keys
cat id_rsa.pub > authorized_keys
4、将主机A生成的authorized_keys文件拷贝到主机B
scp authorized_keys root@192.168.102.110:~/.ssh/
5、 进入主机B将生成的公钥也追加到authorized_keys文件
cat id_rsa.pub >> authorized_keys
6、 将主机B的最终版authorized_keys文件copy到主机A
7、 查看主机A的authorized_keys文件
注意:
know_hosts : 已知的主机公钥清单
查看know_hosts文件
里面是B主机的公钥[主机A也同理]
8、 测试
主机A切换到主机B
再从B主机切换回A主机
测试成功
结合上篇scp,以后copy文件就可以不用输入密码。
关于authorized_keys文件和 .ssh目录权限,大家可以根据自己情况设置。
Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved