![Hadoop+Spark大数据技术(微课版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/911/53255911/b_53255911.jpg)
上QQ阅读APP看书,第一时间看更新
1.3.2 安装SSH、配置SSH免密码登录
SSH(secure shell,安全外壳)是建立在应用层基础上的安全协议,由IETF(Internet engineering task force,因特网工程任务组)的网络小组制定。SSH是目前较可靠的,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。SSH由客户端和服务器组成,它在后台运行并响应来自客户端的连接请求,客户端包含ssh程序及scp(远程复制)、slogin(远程登录)和sftp(安全文件传输)等其他应用程序。SSH的工作机制是,本地的客户端发送一个连接请求到远程的服务器,服务器检查申请的包和IP地址再发送密钥给SSH的客户端,本地再将密钥发回给服务器,自此建立连接。
Hadoop的NameNode(名称节点)需要通过SSH来启动Slave列表中各台主机的守护进程。由于SSH需要用户密码进行登录,但Hadoop并没有提供以SSH输入密码登录的形式,因此,为了能够在系统运行中完成节点的免密码登录和访问,需要将Slave列表中的各台主机配置为NameNode。配置SSH的主要工作是创建一个认证文件,使得用户以public key方式登录,而不用手动输入密码。Ubuntu默认已安装了SSH客户端,此外还需要执行如下命令安装SSH服务器:
![](https://epubservercos.yuewen.com/34C2C0/31729190603279406/epubprivate/OEBPS/Images/58327_19_05.jpg?sign=1739435703-MHFuPb4r1Whf4EFQs9igYkhA3IbBqQod-0-2c37117fcc33a1eff25953bfad03cef4)
安装好SSH服务器后,可以执行如下命令登录本机:
![](https://epubservercos.yuewen.com/34C2C0/31729190603279406/epubprivate/OEBPS/Images/58327_19_06.jpg?sign=1739435703-xeTboGXXgV6xrLzlF7s5zEeZ7tirLkkm-0-01414cd4df2270f6182da602910c00b1)
此时会有登录提示,要求用户输入“yes”以便确认连接。输入“yes”,然后按提示输入密码“hadoop”,这样就可以登录到本机。但这样登录是需要每次都输入密码的,下面我们将其配置成SSH免密码登录,配置步骤如下。
(1)生成密钥对
![](https://epubservercos.yuewen.com/34C2C0/31729190603279406/epubprivate/OEBPS/Images/58327_20_01.jpg?sign=1739435703-4JAlsxw5Nlv11We1H5Vm1C9mYrXpvys5-0-4366585508122ed95b5b483851ef3605)
(2)加入授权
![](https://epubservercos.yuewen.com/34C2C0/31729190603279406/epubprivate/OEBPS/Images/58327_20_02.jpg?sign=1739435703-GS3ButuwAPsJlPfqcNgTXMyiUgWH6LT9-0-bd223d29794590b35b4a1c51102610b8)
此时,再执行ssh localhost命令,不用输入密码就可以直接登录了。