ssh免密碼登錄Permission denied (publickey,gssapi-keyex,gssapi-with-mic) 的解決方案!

當(dāng)出現(xiàn)Permission denied (publickey,gssapi-keyex,gssapi-with-mic) 警告的時(shí)候,恭喜你,你已經(jīng)離成功很近了。
遠(yuǎn)程主機(jī)這里設(shè)為slave2,用戶為Hadoop。
本地主機(jī)設(shè)為slave1
以下都是在遠(yuǎn)程主機(jī)slave2上的配置,使得slave1可以免密碼連接到slave2上。如果想免密碼互聯(lián),原理一樣的,在slave1上也這么配置即可!
1)首先:配置ssh服務(wù)器配置文件。
在root 用戶下才能配置。
vi /etc/ssh/sshd_config
權(quán)限設(shè)為no:

#PermitRootLogin yes
#UsePAM yes
#PasswordAuthentication yes

如果前面有# 號,將#號去掉,之后將yes修改為no。
修改之后為:

PermitRootLogin no
UsePAM no
PasswordAuthentication no

權(quán)限設(shè)為yes:

RSAAuthentication yes
PubkeyAuthentication yes

2)重啟sshd服務(wù)

systemctl restart sshd.service
systemctl status sshd.service #查看ssh服務(wù)的狀態(tài)
#systemctl start sshd.service  #開啟ssh服務(wù)
#sytemctl enable sshd.service #ssh服務(wù)隨開機(jī)啟動(dòng),還有個(gè)disabled
#systemctl stop sshd.ervice #停止

正常情況下應(yīng)該是Active:active(running)
3)修改文件夾以及文件的權(quán)限。

#chmod 700 /home/Hadoop/.ssh
#chmod 644 /home/Hadoop/.ssh/authorized_keys

4)在slave1上進(jìn)行測試

ssh slave2

image

上面就是完整的解決這個(gè)問題的辦法!
總結(jié):出現(xiàn)這種警告,我覺得最終的原因是文件夾以及文件的讀寫權(quán)限的問題。
建議首先修改/home/Hadoop/.ssh以及/home/Hadoop/.ssh/authorized_keys的權(quán)限。
注意,還有可能是禁用了root登錄出現(xiàn)這種情況。
當(dāng)切換到普通用戶—Hadoop之后就又能登錄了。

image

即使在/etc/ssh/sshd_config 中配置了PermitRootLogin 為yes,還是不能用slave1的root用戶直接無密碼連接到slave2上。只要切換到會(huì)普通用戶就可以了,不影響使用。畢竟root用戶在Linux系統(tǒng)中如此特殊和重要。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容