首页 理论教育 配置SSH免密码登录的方法

配置SSH免密码登录的方法

时间:2023-06-24 理论教育 版权反馈
【摘要】:SSH 免密钥登录可以使登录信息不会遭到泄露,同时也简化、方便了系统之间的登录操作,提高了工作效率。Hadoop 中的NameNode 和DataNode 数据通信采用了SSH 协议,因此,需要配置各节点之间的SSH 免密钥登录。因为SSH 免密钥登录的功能与用户密切相关,所以需要指定为哪一个用户配置SSH 免密钥登录。如图2.46 所示为使用SSH 命令登录slave2。图2.47master 节点进行SSH 免密钥登录测试图2.47master 节点进行SSH 免密钥登录测试

配置SSH免密码登录的方法

SSH 是一种加密的网络传输协议,可以在不安全的网络中为网络服务提供安全的传输环境。SSH 免密钥登录可以使登录信息不会遭到泄露,同时也简化、方便了系统之间的登录操作,提高了工作效率。Hadoop 中的NameNode 和DataNode 数据通信采用了SSH 协议,因此,需要配置各节点之间的SSH 免密钥登录。

因为SSH 免密钥登录的功能与用户密切相关,所以需要指定为哪一个用户配置SSH 免密钥登录。本书为apache 用户进行配置,对其他用户的配置方法是一样的。注意,以下操作均在apache 用户下执行,且三个节点均需执行步骤①~⑦的操作。

①在apache 用户目录下,创建.ssh 目录,执行命令“mkdir /home/apache/.ssh”。

②在终端执行命令“ssh-keygen -t rsa”,生成密钥对。其中,“ssh-keygen”是密钥生成器,“-t”是参数,“rsa”是一种非对称加密算法。生成的密钥对分别是公钥文件“id_rsa.pub”和私钥文件“id_rsa”。在这个过程中需要连续按四次回车键。如图2.44 所示。

③切换到.ssh 目录“cd /home/apache/.ssh”。

④生成授权文件。将公钥文件“id_rsa.pub”中的内容复制到“authorized_keys”文件中,命令为“cat id_rsa.pub >> authorized_keys”,如图2.45 所示。

图2.44 master 节点生成密钥对

图2.45 生成授权文件(www.xing528.com)

⑤对.ssh 目录及文件赋予权限,输入以下两条命令:

⑥各节点使用SSH 登录各自主机进行测试,第一次登录需要输入“yes”进行确认,第二次及以后登录则不需要输入任何内容。如图2.46 所示为使用SSH 命令登录slave2。

图2.46 使用SSH 命令登录slave2

⑦将所有节点中的公钥“id_rsa. pub”复制到master 中的“authorized_keys”文件中。在各节点的终端中执行命令“cat /home/apache/. ssh/id_rsa. pub | ssh apache@ master 'cat >> /home/apache/.ssh/authorized_keys'”,slave1 和slave2 执行过程中需要输入master 节点的apache用户登录密码。

⑧切换到.ssh 目录,将master 节点中的authorized_keys 文件分发到slave1 和slave2,需要输入slave1 和slave2 的apache 用户登录密码。

⑨登录测试。完成上述操作后,master、slave1 和slave2 互相之间使用SSH 进行登录,如果都能免密钥登录,说明SSH 配置成功。如图2.47 所示为在master 节点进行SSH 登录测试。

图2.47 master 节点进行SSH 免密钥登录测试

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈