使用ssh免密远程登陆

来源:互联网 发布:modbus tcp编程实例 编辑:程序博客网 时间:2024/05/16 09:46

由于要做hadoop的学习,想着先装一下, Hadoop一开始是为Linux开发使用的,所以在Linux上开发比较合适,并且一些公司也是在Linux上使用


首先先创建一个用户,这个就跳过了,因为要为练习Hadoop所以创建了一个用户,这里建议只要不用root来试都可以。(不懂那会经常用root实验,结果一个自杀命令让自己机子直接崩了)


ok进入正题,ssh是什么 下面的内容来自百度百科

SSH 为 Secure Shell 的缩写,由 IETF 的网络小组(Network Working Group)所制定;SSH 为建立在应用层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台。SSH在正确使用时可弥补网络中的漏洞。SSH客户端适用于多种平台。几乎所有UNIX平台—包括HP-UXLinuxAIXSolarisDigital UNIXIrix,以及其他平台,都可运行SSH。


为啥要用ssh的免密登陆呢?大家都知道Hadoop集群中可能有几十台机器甚至是上千台机器,而每次启动Hadoop都需要输入密码才能够登录到每台机器的DataNode上的,所以为了避免后期繁琐的操作,一般都会配置SSH免密码登录.

首先我使用的是centos 7 原来从网上找的教程都实现不了因为和用的Linux的系统不同

我创建的新用户叫做,Hadood,


在~目录下输入ssh-keygen    #直接回车3次下面会出现一个默认的产生密钥的文件,使用默认的就ok,然后是你的口令,我选择没有,第三个回车是确认口令。

接着使用cat命令将你的公共密钥(.pub)保存到authorized_keys

cat /home/hadoop(注意这是我的用户,不同用不不一样)/.ssh/id_rsa>>/home/hadoop/.ssh/authorized_keys

最后更改authorized_keys文件的权限,变为600 当时我试了好几次没成功都因为这边权限没有更改。

最后测试一下是否成功了 ssh localhost 直接登陆不需要输入密码则是ok






原创粉丝点击