Linux中ssh配置无密码登陆完整步骤以及需要注意的问题有哪些,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
对于 Hadoop 的伪分布式和全分布式而言,Hadoop 的名称节点(NameNode)需要启动集群中所有机器的 Hadoop 的守护进程,这个过程可以通过 SSH 登陆来实现。Hadoop 并没有提供 SSH 输入密码登陆的形式,因此为了能够顺利登陆每台机器,需要将所有机器配置为名称节点可以无密码登陆的形式。
ssh - 安全外壳协议
SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。SSH 最初是 UNIX 系统上的一个程序,后来又迅速扩展到其他操作平台。SSH 在正确使用时可弥补网络中的漏洞。SSH 客户端适用于多种平台。几乎所有UNIX 平台,包括 HP-UX、Linux、AIX、Solaris、Digital、UNIX、Irix 以及其他平台,都可运行 SSH。
首先我们在自己的 Linux 系统上生成一对 SSHKey: SSH 密钥和 SSH 公钥。然后公钥上传到 Linux 服务器,之后我们就能无密码SSH登陆了。
对于 Hadoop 的伪分布式和全分布式而言,Hadoop 的名称节点(NameNode)需要启动集群中所有机器的 Hadoop 的守护进程,这个过程可以通过 SSH 登陆来实现。Hadoop 并没有提供 SSH 输入密码登陆的形式,因此为了能够顺利登陆每台机器,需要将所有机器配置为名称节点可以无密码登陆的形式。
在 ssh 安装完成但未配置之前(安装 ssh 可以参考大数据基础学习四:伪分布式 Hadoop 在 Ubuntu 上的安装流程完整步骤、易错点分析及需要注意的问题(以 ubuntu-18.04.3、hadoop-3.2.1-tar.gz 为例))。
Linux 终端输入ssh localhost
会提示输入密码,输入之后登陆成功。但是这样登陆是需要输入密码的,这也是我们配置无密码登陆的原因。
首先退出刚才的 ssh,就回到了我们原先的终端窗口,然后利用 ssh-keygen 生成密钥,并将密钥加入授权中:
exit#退出刚才的ssh localhostcd ~/.ssh/#若没有该目录,请再执行一次ssh localhostssh-keygen -t rsa #会有提示,按回车即可cat ./id_rsa.pub >> ./authorized_keys #加入授权
说明:
使用 ssh-keygen 用于生成 RSA 密钥和公钥,-t表示 type,就是生成 RSA 加密的钥匙。
RSA 也是默认的加密类型,所以可以只输入 ssh-keygen,默认的 RSA 长度是 2048 位,如果你非常注重安全,那么可以指定 4096 位的长度。
ssh-keygen -b 4096 -t rsa
SSH 密钥会保存在 home 目录下的 .ssh/id_rsa 文件中,SSH 公钥保存在 .ssh/id_rsa.pub 文件中。
在 Linux 系统中,~ 代表的是用户的主文件夹,即"/home/用户名"这个目录。
Generating public/private rsa key pair.Enter file in which to save the key (/home/matrix/.ssh/id_rsa): #按Enter键Enter passphrase (empty for no passphrase): #输入一个密码Enter same passphrase again: #再次输入密码Your identification has been saved in /home/matrix/.ssh/id_rsa.Your public key has been saved in /home/matrix/.ssh/id_rsa.pub.The key fingerprint is: e1:dc:ab:ae:b6:19:b0:19:74:d5:fe:57:3f:32:b4:d0 matrix@vivid The key's randomart image is:+---[RSA 4096]----+| .. || . . || . . .. . || . . o o.. E .|| o S ..o ...|| = ..+...|| o . . .o .|| .o . || .++o |+-----------------+
执行完成后,再用 ssh localhost 命令,无需密码就可以直接登陆了(首次使用 SSH Key 登陆时需要输入一次 SSH 密钥的加密密码,将来会自动登录,不再需要输入密钥的密码),如下图所示:
关于Linux中ssh配置无密码登陆完整步骤以及需要注意的问题有哪些问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。