1. 程式人生 > >SSH互信配置過程

SSH互信配置過程

無意間看到這篇文章,覺得日後可能會用得上,因此收藏起來,同時也希望能對小夥伴有所幫助

 

背景:前兩天一套oracle RAC叢集出問題,需要重新建庫,dbca建庫過程提示無法建立資料庫,經排查原因為ssh互信配置失效,需重新配置。

配置過程如下:

1.在兩臺機器上生成認證檔案,這裡有個細節,就是ssh互信的認證檔案,需要放在使用者的home目錄下的.ssh目錄中,因此我們要首先建立這個目錄,並且保證這個目錄的許可權是755

一節點操作:

 

[[email protected] ~]$ mkdir .ssh
[[email protected]

~]$ chmod 755 .ssh
[[email protected] ~]$ /usr/bin/ssh-keygen -t rsa
[[email protected] ~]$ /usr/bin/ssh-keygen -t dsa1234

二節點做同樣的操作:

 

[[email protected] ~]$ mkdir .ssh
[[email protected] ~]$ chmod 755 .ssh
[[email protected] ~]$ /usr/bin/ssh-keygen -t rsa
[[email protected]

~]$ /usr/bin/ssh-keygen -t dsa1234

2.將所有的key檔案彙總到一個總的認證檔案中:

 

[[email protected] ~]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
[[email protected] ~]$ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
[[email protected] ~]$ ssh [email protected] cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
[

[email protected] ~]$ ssh [email protected] cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys1234

3.經過1,2兩步,目前mysql01上存在一份完整的認證key檔案,這時候,把它拷到mysql02主機的對應目錄下:

 

[[email protected] ~]$ scp ~/.ssh/authorized_keys mysql02:~/.ssh/1

配置完成!

========================================================

上面的操作太複雜,而且按照上面的方法配置三個及以上的伺服器互信之後,實際上是有問題的。 
既簡單又有效的配置方法如下:

例如在四臺伺服器server1,server2,server3,server4上為hadoop使用者配置互信。

第一步:登入hadoop使用者,執行如下命令生成公鑰:

[[email protected] ~]$ ssh-keygen -t rsa   #下面一直按回車就好1

第二步:用ssh-copy-id 把公鑰複製到各個主機上(包括自己):

 

[[email protected] ~]$ ssh-copy-id -i  .ssh/id_rsa.pub [email protected]
[[email protected] ~]$ ssh-copy-id -i  .ssh/id_rsa.pub [email protected]
[[email protected] ~]$ ssh-copy-id -i  .ssh/id_rsa.pub [email protected]
[[email protected] ~]$ ssh-copy-id -i  .ssh/id_rsa.pub [email protected]

第三步:在其他server上執行上面兩步的命令。

至此,ssh互信配置完成。