hadoop设置ssh免密码登录
2016-03-16 22:58
417 查看
一、SSH来源
对于需要远程管理其它机器,一般使用远程桌面或者telnet。linux一般只能是telnet。但是telnet的缺点是通信不加密,存在不安全因素,只适合内网访问。为解决这个问题,推出了通信加密通信协议,即SSH(Secure Shell)。使用非对称加密方式,传输内容使用rsa或者dsa加密,可以避免网络窃听。
hadoop的进程之间同信使用ssh方式,需要每次都要输入密码。为了实现自动化操作,需要配置ssh免密码登陆方式。
二、ssh原理
三、配置
三个节点m1主、s1、s2主节点m1配置:
首先到用户主目录(cd ~),ls -a查看文件,其中一个为“.ssh”,该文件价是存放密钥的。待会我们生成的密钥都会放到这个文件夹中。----------------------------------
现在执行命令生成密钥: ssh-keygen -t rsa (使用rsa加密方式生成密钥)回车后,会提示三次输入信息,我们直接回车即可。即回车四下。
----------------------------------
进入文件夹cd .ssh (进入文件夹后可以执行ls -a 查看文件)
创建文件 authorized_keys。命令touch authorized_keys
修改authorized_keys文件权限为 600,命令:chmod 600 authorized_keys
将生成的公钥id_rsa.pub 内容追加到authorized_keys(执行命令:cat id_rsa.pub >> authorized_keys)
从节点配置:
s1,s2以同样的方式生成秘钥(ssh-keygen -t rsa ),然后s1和s2将生成的id_rsa.pub公钥追加到m1authorized_keys中)----------------------------------
在s1中执行命令:scp id_rsa.pub m1:/root/.ssh/id_rsa.pub.s1,将s1的公钥copy到m1上。
在s2中执行命令:scp id_rsa.pub m1:/root/.ssh/id_rsa.pub.s2,将s2的公钥copy到m1上。
---------------------------------
进入m1执行命令:cat id_rsa.pub.s1 >> authorized_keys ,cat id_rsa.pub.s1 >> authorized_keys。将s1,s2的公钥加入m1的authorized_keys文件中。
----------------------------------
最后将生成的包含三个节点的秘钥的authorized_keys 复制到s1和s2的.ssh目录下
( scp authorized_keys s1:/root/.ssh/, scp authorized_keys s2:/root/.ssh/)
这样三个节点的authorized_keys 都有了自身节点的公钥和其他节点的公钥,如此节点间和节点自身都可以互相ssh免密码登录,启动hadoop时可以不用输入密码了。
四、验证ssh免密码登录
输入命令ssh localhost(主机名) 根据提示输入“yes”输入命令exit注销(Logout)
再次输入命令ssh localhost即可直接登录
相关文章推荐
- 1.1课程安排和网站基础知识
- 《LINUX内核设计与实现》第一、二章学习总结
- Linux中创建别名
- Linux-进程、进程组、作业、会话、控制终端详解
- Linux内核设计与实现(chapter1/2)
- 在Linux(centos)中搭建LAMP的小过程
- Linux常用命令
- Linux命令大全
- linux内核分析 1、2章读书笔记
- 打印九九乘法表
- linux语言修改
- Tomcat的安装配置
- 运行第一个Hadoop程序,WordCount
- shell中记录运行时间的一种方法
- 20135320赵瀚青LINUX第二章读书笔记
- shell中等待其他程序执行完毕
- shell中的时间变量
- 【tomcat】There are no resources that can be added or removed from the server
- Linux安装JDK
- shell中调用sqlplus