您的位置:首页 > 大数据

CM+CDH构建企业大数据平台系列(十一)

2018-03-26 11:02 253 查看

完整视频+图文资料获取及技术答疑请加:大讲台大数据研习社⑦ :695520445          

                                配置SSH免密码登录

八、设置SSH免密码登录

    1、SSH是什么?为什么要配置ssh免密码登录?        SSH是一个可以在应用程序中提供安全通信的一个协议,通过SSH可以安全地进行网络数据传输,它的主要原理就是利用非对称加密体系,对所有待传输的数据进行加密,保证数据在传输时不被恶意破坏、泄露或者篡改。但是Hadoop使用ssh主要不是用来进行数据传输的,Hadoop主要是在启动和停止的时候需要主节点通过SSH协议将从节点上面的进程启动或停止。也就是说如果不配置SSH免密码登录对hadoop的正常使用也没有任何影响,只是在启动和停止Hadoop的时候需要输入每个从节点的用户名的密码就可以了,但是我们可以想象一下,当集群规模比较大的时候,比如成百上千台,如果每次都要输入每个连接节点的密码,那肯定是比较麻烦的,这种方法肯定是不可取的,所以我们要进行SSH免密码登录的配置,而且目前远程管理环境中最常使用的也是SSH(Secure Shell)。    2、为哪个用户配置SSH免密码登录?        这个问题首先要明确,因为SSH免密码登录的功能是跟用户密切相关的,你为哪个用户配置SSH免密码登录,那么哪个用户就具有SSH免密码登录的功能,没有配置的用户则没有该功能。这里我们就为root用户配置。对其他用户配置的方法是一样的。    3、如何配置ssh免密码登录?      (1)首先生成秘钥对(即一个私钥文件,一个公钥文件)。所有节点都进行同样的操作。           即输入命令:ssh-keygen -t rsa           其中ssh-keygen是ssh秘钥生成器,-t是指定参数,rsa是一种加密算法。      (2)把所有节点的公钥cp到authorized_keys文件中,注意是添加而不是覆盖           即输入命令:cat ~/.ssh/id_rsa.pub | ssh root@node-cm01.djt.com 'cat >> ~/.ssh/authorized_keys'          注意:在3个节点都进行上边的命令。           然后在cm01节点上查看authorized_keys是否有3个节点的公钥。      (3)然后把该认证文件复制到各个节点           即输入命令:cp authorized_keys root@node-cm02.djt.com:~/.ssh/           cp authorized_keys root@node-cm03.djt.com:~ /.ssh/           在各个节点查看一下,保证每个节点都有集群中所有节点的公钥。每个节点有自己的私钥,当公钥和私钥对上就可以连接成功。      (4)验证ssh免密码登录           通过“ssh 主机名”的方式实现集群中各个节点不用输入密码即可连接成功即可。          注意:第一次连接时需要输入yes的,连接成功之后,以后再次连接就不用输入yes,也不用输入密码,真正实现SSH免密码登录了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息