目前有几台机器,主机器叫master,另一台叫slave1。要在master上无密码登录slave1,需要做无密码登录操作。
步骤一
在master上操作下面命令:
输入ssh-keygen -t rsa后一直按回车键,好像有3次
$ cd ~
$ ssh-keygen -t rsa
$ cd .ssh
$ cp id_rsa.pub authorized_keys
$ chmod 600 authorized_keys
步骤二
在slave上操作下面命令
$ cd ~
$ ssh-keygen -t rsa
$ cd .ssh
$ cp id_rsa.pub authorized_keys
$ chmod 600 authorized_keys
步骤三
接下来保证两台机是连通的,执行下面命令,拷贝master的公钥到slave1机器去,需要输入slave1的hadoop用户密码
scp ~/.ssh/id_rsa.pub hadoop@slave1:/home/hadoop/
步骤四
然后在slave1机器上就可以看到id_rsa.pub文件了
执行下面命令:
合并id_rsa.pub内容到slave1的authorized_keys文件上,然后删除文件id_rsa.pub
$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
$ rm ~/id_rsa.pub
完成
执行完即可在master上无密码登录slave1机器了,但是想要在slave1登录master就不行,还得反过来,拷贝slave1的id_rsa.pub内容到master机器上,然后合并到authorized_keys文件上才行
注意:如果实在不行,只能互拷公钥了,也就是两条机器上的authorized_keys一模一样实操
下面是实操代码:
master
[hadoop@mester .ssh]$ scp id_rsa.pub hadoop@slave2:/home/hadoop/
hadoop@slave2's password:
id_rsa.pub 100% 395 0.4KB/s 00:00
[hadoop@mester .ssh]$
slave2
[hadoop@localhost ~]$ ls
id_rsa.pub 公共 模板 视频 图片 文档 下载 音乐 桌面
[hadoop@localhost ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/hadoop/.ssh/id_rsa):
Created directory '/home/hadoop/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/hadoop/.ssh/id_rsa.
Your public key has been saved in /home/hadoop/.ssh/id_rsa.pub.
The key fingerprint is:
50:2a:8e:e0:25:23:c8:4d:5f:49:f0:34:2d:3f:53:03 hadoop@slave2
The key's randomart image is:
+--[ RSA 2048]----+
| . .o=+E. |
|o o . +=.. o |
|++ o..o.o . . |
|o.+o . . + |
| .. . S o |
| |
| |
| |
| |
+-----------------+
[hadoop@localhost ~]$
[hadoop@localhost ~]$ cd .ssh
[hadoop@localhost .ssh]$ cp id_rsa.pub authorized_keys
[hadoop@localhost .ssh]$ chmod 600 authorized_keys
[hadoop@localhost .ssh]$ cd ..
[hadoop@localhost ~]$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
[hadoop@localhost ~]$ rm ~/id_rsa.pub
[hadoop@localhost ~]$
登录验证:
[hadoop@mester .ssh]$ ssh slave2
Last login: Thu Jun 21 16:04:12 2018 from master
[hadoop@slave2 ~]$ exit
登出
Connection to slave2 closed.
[hadoop@mester .ssh]$
---------------------
作者:Tlimited
来源:CSDN
原文:https://blog.csdn.net/u014204541/article/details/80762794
版权声明:本文为博主原创文章,转载请附上博文链接!