ssh遠(yuǎn)程登陸有兩種授權(quán)機(jī)制:
1.通過(guò)主機(jī)用戶名密碼驗(yàn)證登錄(密碼驗(yàn)證)
需要用到的命令
#遠(yuǎn)程登錄主機(jī)
[hadoop@master ~]$ ssh hadoop@slave1
#退出登錄
[hadoop@slave1 ~]$ exit
2.通過(guò)密鑰驗(yàn)證:
兩臺(tái)主機(jī):A,B
ssh 遠(yuǎn)程登錄的密鑰授權(quán)機(jī)制:
1.生成公鑰對(duì)
2.將A的公鑰發(fā)送給B
3.將A的公鑰加入到B的授權(quán)列表
實(shí)現(xiàn)過(guò)程
1.A發(fā)送登陸請(qǐng)求到B(攜帶登陸消息)
2.B會(huì)首先查看授權(quán)列表
3.B會(huì)加密一個(gè)隨機(jī)字符炊豪,用A的公鑰加密后給A
4.A會(huì)收到加密的密文于样,A用私鑰去進(jìn)行解密
5.將解密結(jié)果發(fā)送給B
6.B會(huì)比對(duì)解密結(jié)果是否正確槽奕,如果正確就授權(quán)給A
3.實(shí)現(xiàn)過(guò)程:
1.生成密鑰:
ssh-keygen -t rsa
敲入四個(gè)回車(chē)
2.使用scp scp id_rsa.pub slave1:/home/hadoop
3.登陸到slave1上大磺,新建touch authorized_keys给郊。
4.然后進(jìn)入ssh目錄菩浙,使用追加命令到授權(quán)列表中:
#追加命令
cat ~/id_rsa.pub > authorized_keys
#查看結(jié)果
cat authorized_keys
#因?yàn)槭褂霉潭?quán)限,所以需要修改:
chmod 600 authorized_keys