centos配置ssh免密码登录后仍要输入密码的解决方法
From: https://blog.csdn.net/zwbill/article/details/80448939
前言
在搭建Linux集群服務(wù)的時候,主服務(wù)器需要啟動從服務(wù)器的服務(wù),如果通過手動啟動,集群內(nèi)服務(wù)器幾臺還好,要是像阿里1000臺的云梯Hadoop集群的話,軌跡啟動一次集群就得幾個工程師一兩天時間,是不是很恐怖。如果使用免密登錄,主服務(wù)器就能通過程序執(zhí)行啟動腳步,自動幫我們將從服務(wù)器的應(yīng)用啟動。而這一切就是建立在ssh服務(wù)的免密碼登錄之上的。所以要學(xué)習(xí)集群部署,就必須了解linux的免密碼登錄。
第一步:在本機(jī)中創(chuàng)建秘鑰
1、執(zhí)行命令:
ssh-keygen -t rsa -C "xx@qq.com"(隨便編個字符串,一般用郵箱)
2、之后一路回車就行啦;會在~(home)目錄下中產(chǎn)生.ssh(隱藏)文件夾;
3、里面有兩個文件id_rsa(私鑰)、id_rsa.pub(公鑰)文件
注意事項:
①在liunx環(huán)境下,要想復(fù)制公鑰或是私鑰,不要使用vim等編輯器打開文件來復(fù)制粘貼;
因為它會產(chǎn)生不必要的回車。
②應(yīng)該使用cat把內(nèi)容打印到終端上再來復(fù)制粘貼;
第二步:用 ssh-copy-id 把公鑰復(fù)制到遠(yuǎn)程主機(jī)上
ssh-copy-id zhangming@192.168.161.132把秘鑰拷貝到遠(yuǎn)程服務(wù)器
用這種方式拷貝使用的端口是Linux默認(rèn)的22,如果你想指定端口,可以使用:
ssh-copy-id -i /用戶名/.ssh/id_rsa.pub '-p 端口號 用戶名@106.75.52.44'
ssh-copy-id -i /root/.ssh/id_rsa.pub '-p 22222 root@106.75.52.44'這里可能需要等一段時間,反正我是等了挺久的時間,然后顯示要你輸入密碼:
zhangming@106.75.52.44's password:
輸入完密碼后,顯示:
Now try logging into the machine, with "ssh '-p 22222 root@106.75.52.44'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.
表示成功了!
第三步: 遠(yuǎn)程登入
[zhangming@localhost ~]$ ssh zhangming@192.168.161.134 Last login: Mon Oct 10 14:18:54 2016 from 192.168.161.135ssh zhangming@123.59.44.56 -p 22222注意
遇到的大坑:
配置ssh免密碼登錄后,仍提示輸入密碼
解決方法:
首先我們就要去查看系統(tǒng)的日志文件
tail /var/log/secure -n 20發(fā)現(xiàn)問題的所在:Authentication refused: bad ownership or modes for file
從字面上可以看出是目錄的屬主和權(quán)限配置不當(dāng),查找資料得知:SSH不希望home目錄和~/.ssh目錄對組有寫權(quán)限,通過下面幾條命令改下
chmod g-w /home/zhangming chmod 700 /home/zhangming/.ssh chmod 600 /home/zhangming/.ssh/authorized_keys然后我們再去登錄,就能不用密碼進(jìn)入了。
有木有很高興呀!
總結(jié)
以上是生活随笔為你收集整理的centos配置ssh免密码登录后仍要输入密码的解决方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HTTP 笔记与总结(7)HTTP 缓存
- 下一篇: 【极客】神器——常用的一些小工具