節(jié)點(diǎn)均為centOS7系統(tǒng)准验,進(jìn)行ssh免密登錄操作
假設(shè)想從node1免密登錄到node2扔水,node3
一、生成公鑰私鑰
1.首先要生成node1曹步、node2宪彩、node3的公鑰私鑰,在每個(gè)服務(wù)器的終端中輸入如下命令
$ ssh-keygen -t rsa
1.1若之前沒(méi)用公鑰會(huì)出現(xiàn)如下結(jié)果:
第二行打印 Enter file in ... (/root/.ssh/id_rsa):
以及第三第四行讲婚,冒號(hào)后面尿孔,直接按enter鍵即可。
1.2若之前有公鑰私鑰
以上是沒(méi)有公鑰私鑰需要新生成的時(shí)候的操作筹麸,接下來(lái)說(shuō)一下如果有了公鑰私鑰活合,其他節(jié)點(diǎn)設(shè)置過(guò)了,現(xiàn)在不想全部重寫(xiě)覆蓋物赶,想在原來(lái)的基礎(chǔ)上追加的話(huà)白指,需要再怎么辦:
如果已經(jīng)有了公鑰私鑰,會(huì)提示already exist.如圖所示:
如果你想重新設(shè)置块差,則下面問(wèn)overwrite(y/n) 時(shí)侵续,輸入y;如果只是想追加憨闰,則選擇n即可状蜗,這樣就不會(huì)更改你之前生成的。
同樣上面第二行直接按enter鍵就好
二鹉动、將公鑰私鑰拷貝到想要免密登錄到其他節(jié)點(diǎn)的節(jié)點(diǎn)上
1.進(jìn)入 .ssh 目錄查看已經(jīng)生成的公私鑰
$ cd .ssh
其中id_rsa.pub就是生成的公鑰轧坎,id_rsa為私鑰
2.接下來(lái)將當(dāng)前節(jié)點(diǎn)(node2,node3)的公鑰拷貝到想要免密登錄的節(jié)點(diǎn)(node1)上并重命名
scp id_rsa.pub root@211.0.0.1:.ssh/id_rsa_5.pub
這個(gè)命令是把當(dāng)前節(jié)點(diǎn)的公鑰拷貝到211.0.0.1節(jié)點(diǎn)的.ssh目錄下泽示,并改名為id_rsa_5.pub
示例如下:
中間自己輸入密碼就好缸血。
其中蜜氨,如果登錄時(shí)遇到問(wèn)題如圖:
將node2、node3的公鑰拷貝到node1上
三捎泻、將自己的公鑰和復(fù)制過(guò)來(lái)的公鑰添加到authorized_keys文件中
使用cat命令
$ cat id_rsa.pub >> authorized_keys
$ cat id_rsa_2.pub >> authorized_keys
$ cat id_rsa_3.pub >> authorized_keys
四飒炎、將node1已經(jīng)添加好公鑰的authorized_keys文件拷貝到node2,node3的.ssh目錄下
這個(gè)過(guò)程可以重命名一下笆豁,或者自己按照自己喜歡的方式把公鑰拷貝到對(duì)應(yīng)的節(jié)點(diǎn)上郎汪,不一定非要懂放在authorized_keys文件中,只要最后公鑰添加到對(duì)應(yīng)節(jié)點(diǎn)的authorized_keys中就好闯狱,而且直接從其他節(jié)點(diǎn)拷貝來(lái)的authorized_keys替換掉的話(huà)也有隱患煞赢,說(shuō)不得把之前設(shè)置的都覆蓋了,如果之前從來(lái)沒(méi)設(shè)置過(guò)哄孤,那就好說(shuō)了照筑,我這里就是想在原來(lái)的基礎(chǔ)上追加,所以盡可能的不要把原來(lái)的authorized_keys文件替換掉瘦陈,故拷貝的時(shí)候凝危,也重命名了,還是用cat的方式把公鑰添加到已有的authorized_keys上双饥,而不是替換
示例如圖:
五媒抠、驗(yàn)證一下是否成功即可
如果是在之前從未設(shè)置過(guò)公鑰私鑰的節(jié)點(diǎn)上的話(huà),推薦這個(gè)鏈接教程咏花。