解決:centos配置ssh免密碼登錄后仍要輸入密碼


轉自https://www.jb51.net/article/121180.htm

 

第一步:在本機中創建秘鑰

1、執行命令:ssh-keygen -t rsa 

2、之后一路回車就行啦;會在~(home)目錄下中產生.ssh(隱藏)文件夾;

3、里面有兩個文件id_rsa(私鑰)、id_rsa.pub(公鑰)文件

注意事項:

①在liunx環境下,要想復制公鑰或是私鑰,不要使用vim等編輯器打開文件來復制粘貼;

因為它會產生不必要的回車。

②應該使用cat把內容打印到終端上再來復制粘貼;

第二步:用 ssh-copy-id 把公鑰復制到遠程主機上

ssh-copy-id zhangming@192.168.161.132

把秘鑰拷貝到遠程服務器

用這種方式拷貝使用的端口是Linux默認的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.

表示成功了!

第三步: 遠程登入

[zhangming@localhost ~]$ ssh zhangming@192.168.161.134
Last login: Mon Oct 10 14:18:54 2016 from 192.168.161.135

ssh zhangming@123.59.44.56 -p 22222

 

遇到的大坑:

配置ssh免密碼登錄后,仍提示輸入密碼

解決方法:
首先我們就要去查看系統的日志文件
tail /var/log/secure -n 20

發現問題的所在:Authentication refused: bad ownership or modes for file

從字面上可以看出是目錄的屬主和權限配置不當,查找資料得知:SSH不希望home目錄和~/.ssh目錄對組有寫權限,通過下面幾條命令改下

chmod g-w /home/zhangming
chmod 700 /home/zhangming/.ssh
chmod 600 /home/zhangming/.ssh/authorized_keys
然后我們再去登錄,就能不用密碼進入了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM