從零開始構建集羣前期準備之---SSH各服務器間無密碼登錄

    集羣中服務器數量較多時,各節點的密碼不相同之間不停切換,須要牢記各節點密碼並輸入密碼,就成了一件很痛苦的事了。本文講的SSH各服務器間無密碼登錄,就是解決這個問題的。node

    本文,咱們須要實現node一、node二、node3之間不須要輸入密碼直接經過:算法

           ssh node1或ssh 192.168.100.130直接登陸vim


    各節點列表:服務器

    node1 192.168.100.130
dom

    node2 192.168.100.100ssh

    node3 192.168.100.101    ide


實現過程:spa

    首先實現node1無密碼登錄node2。orm

node1節點操做:it

一、在node1機器生成公鑰/私鑰對

[root@node1 ~]# ssh-keygen -t rsa -P "

(注:-P表示密碼,-P '' 就表示空密碼,也能夠不用-P參數,這樣就要三車回車,用-P就一次回車。
它在/root下生成.ssh目錄,.ssh下有id_rsa和id_rsa.pub。)

2.把node1機下的id_rsa.pub複製到node2機下,在node2機的.ssh/authorized_keys文件裏,我用scp複製。

[root@node1 ~]# scp .ssh/id_rsa.pub root@192.168.100.100:/root

root@192.168.100.100's password:

id_rsa.pub                                   100%  392     0.4KB/s   00:00 

因爲尚未免密碼登陸的,因此要輸入密碼。

node2節點操做:

3.node2機把從node1機複製的id_rsa.pub添加到.ssh/authorzied_keys文件裏。

[root@node2 ~]# cat id_rsa.pub >> .ssh/authorized_keys
[root@node2 ~]#  chmod 600 .ssh/authorized_keys

(注:authorized_keys的權限要是600


再添加機器,就是不停的重複第2步和第3步操做。


大功告成!!!


擴展:主機名登陸

一、經過修改hosts文件能夠實現經過主機名登陸

[root@node1 ~]# vim /etc/hosts

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4

::1         localhost localhost.localdomain localhost6 localhost6.localdomain6


192.168.100.130 node1

192.168.100.100 node2

192.168.100.101 node3

二、使用scp複製hosts文件到各各節點。

[root@node1 ~]# scp /etc/hosts root@192.168.100.100:/etc/

hosts                                        100%  226     0.2KB/s   00:00    

[root@node1 ~]# scp /etc/hosts root@192.168.100.101:/etc/

hosts                                        100%  226     0.2KB/s   00:00    

結果演示:

[root@node1 ~]# ssh node2

Last login: Tue Mar  3 17:42:18 2015 from node1

[root@node2 ~]# ssh node3

Last login: Thu Dec 18 17:14:29 2014 from 192.168.100.130

[root@node3 ~]#


總結:

        登陸的機子可有私鑰,被登陸的機子要有登陸機子的公鑰。這個公鑰/私鑰對通常在私鑰宿主機產生。上面是用rsa算法的公鑰/私鑰對,固然也能夠用dsa(對應的文件是id_dsa,id_dsa.pub)

想讓node1,node2機無密碼互登陸,那node2機以上面一樣的方式配置便可。

相關文章
相關標籤/搜索