Hadoop真分布式实现SSH免密登录

首先需要两台服务器(CentOS安装Linux见:https://www.cnblogs.com/syq816/p/12355115.html)

伪分布式的搭建见:https://www.cnblogs.com/syq816/p/12504812.html

安装好之后先测试两台服务器是否连通,使用ping命令可以测试,这里不再赘述。

SSH密钥登录的实现机制如下图所示:

根据图示我们来一步步的完成操作:

1、首先主机A需要生成密钥对,使用如下命令完成:出现Enter file in which to save the key (/usr/hadoop/.ssh/id_rsa) 直接enter即可。

sh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
2、我们要把主机A的公玥给到B主机:这里需要说明的一点是我已经在hosts文件中配置了hadoop02的ip地址,所以直接用到了hadoop02:/home/hadoop这样的命令,如果没有在host文件配置的话就把hadoop02改成你第二台服务器地址。scp命令在这里不多赘述,详见: https://www.cnblogs.com/syq816/p/12355133.html
scp id_rsa.pub hadoop02:/home/hadoop

3、拷贝到B主机之后B主机需要把A主机的密钥加入授权列表,切换到B主机执行如下命令:

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

4、记得权限的修改!(B主机)

~/.ssh需要是700权限
authorized_keys需要是644权限

chmod 700 ~/.ssh

chmod 644 ~/.ssh/authorized_keys

这样的话我们的密钥就建立完毕了!

我们来切换到A主机来试着无密码登录B主机试试:

ssh hadoop02

至此,大功告成!

 

猜你喜欢

转载自www.cnblogs.com/syq816/p/12507562.html