CentOS SSH免密碼登陸(SSH互信)

在作集羣的時候是須要SSH互信的,另外也利於在另外一節點操做方便node

1.Node1中生成公鑰和私鑰對bash

[root@Node1~]# ssh-keygen -t rsa
Generatingpublic/private rsa key pair.
Enterfile in which to save the key (/root/.ssh/id_rsa): 回車
Enterpassphrase (empty for no passphrase): 回車
Entersame passphrase again: 回車
Youridentification has been saved in /root/.ssh/id_rsa.
Yourpublic key has been saved in /root/.ssh/id_rsa.pub.

這期間一直按回車便可,這樣公鑰/私鑰對就建立完畢ssh

2.Node2上建立.ssh目錄並設置權限ide

[root@Node2~]# mkdir /root/.ssh/
[root@Node2~]# chmod 700 .ssh/

3.將公鑰傳送到Node2上,這樣在Node1上就能夠免密碼登陸Node2了spa

[root@Node1~]# scp .ssh/id_rsa.pub Node2:.ssh/authorized_keys
root@Node2'spassword: 輸入Node2(192.168.100.223)的root密碼
id_rsa.pub                                   100%  392     0.4KB/s   00:00

或者也能夠直接使用
xml

[root@node1 ~]# ssh-copy-id -i .ssh/id_rsa.pub root@node2

如今咱們已經能夠在Node1上免密碼登陸Node2了it

若是出現io

[root@Node2 .ssh]# ssh -copy -id -i id_rsa.pub root@Node1
-bash: ssh: command not found
或
[root@Node2 .ssh]# scp id_rsa.pub Node1:.ssh/authorized_keys
-bash: scp: command not found

則是說明未安裝openssh-clients
class

執行集羣

yum -y install openssh-clients

這時最好在Node2上執行:

[root@node2 ~]# touch /root/.ssh/authorized_keys2  (若是已經存在這個文件, 跳過這條)
[root@node2 ~]# cat /root/.ssh/authorized_keys   >> /root/.ssh/authorized_keys2 (將authorized_keys的內容追加到 authorized_keys2 中)

這裏在Node2上新建authorized_keys2文件,並將authorized_keys文件追加到authorized_keys2文件裏是爲了若是須要在多臺機器上進行互信,則可能會將authorized_keys文件覆蓋,如今直接將全部公鑰都放在一個文件裏頭


另外再在Node2上也生成公鑰和私鑰對,將公鑰傳至Node1上

相關文章
相關標籤/搜索