天天看点

Linux虚拟机之间免密登录的实现

Linux虚拟机之间免密登录的实现

1.生成当前节点免密登录信息

1)$ ssh-keygen -t rsa 命令,出现一下结果,我一直按Enter,按到最后,

2)$ ssh localhost  进行检测,是否无密码登录

3)$ cd .ssh

4)$ ls -a

authorized_keys  id_rsa  id_rsa.pub

2.B实现免密登录A,需要在B中导入A的id_rsa.pub

1)$ scp id_rsa.pub [email protected]:/home/用户usera  从A节点拷贝id_rsa.pub到B节点用户目录下

2)$ cat id_rsa.pub >> .ssh/authorized_keys  在B节点上,将id_rsa.pub写入到B的authorized_keys

3)$ ssh 用户[email protected]  在B节点实现免密码使用用户登录A节点,进行控制   在命令中A、B均可以用IP代替

参考

1、[email protected]:/root$ ssh-keygen -t rsa  命令,出现一下结果,我一直按Enter,按到最后,

[cpp] view plain copy

Generating public/private rsa key pair.  

Enter file in which to save the key (/home/hadoop02/.ssh/id_rsa):   

Enter passphrase (empty for no passphrase):   

Enter same passphrase again:   

Your identification has been saved in /home/hadoop02/.ssh/id_rsa.  

Your public key has been saved in /home/hadoop02/.ssh/id_rsa.pub.  

The key fingerprint is:  

0f:7e:45:6c:40:7c:9d:46:c5:12:31:09:5c:2c:4a:aa [email protected]  

The key's randomart image is:  

+--[ RSA 2048]----+  

|         oo..**B.|  

|          oo+ B..|  

|         o o+o . |  

|        . .o     |  

|       .S   .    |  

|      E. o .     |  

|        . o      |  

|         .       |  

|                 |  

+-----------------+  

2、[email protected]:/root$ cat .ssh/id_rsa.pub >> .ssh/authorized_keys

注意:cat 与.ssh之间有空格,id_rsa.pub与>>之间有空格

3、[email protected]:~$ cd .ssh

4、[email protected]:~$ ls -a

authorized_keys  id_rsa  id_rsa.pub

5、[email protected]:~/.ssh$ ssh localhost  进行检测,是否无密码登录

6、把hadoop02中的id_rsa.pub拷贝到hadoop01中

[email protected]:~/.ssh$ scp id_rsa.pub [email protected]:/home/hadoop01

注意:[email protected]在ubuntu操作系统中必须这样写,否则就会出现错误。这可能跟其他的linux操作系统不同,hadoop01是你的登录名,192.168.1.135是IP地址。

这样就可以传递成功!

7、[email protected]:~$ cat id_rsa.pub >> .ssh/authorized_keys

注意这个要在/hadoop01目录中,完成这部之后,hadoop02访问hadoop01就不需要密码访问了。

8、测试一下:在hadoop02中,ssh [email protected]  测试一下是否直接可以控制hadoop01了!

继续阅读