解決Linux普通用戶配置SSH免密登錄不生效


問題描述

在centos下,使用公鑰配置非root用戶免密登錄后,嘗試登錄時仍需輸入密碼。

解決思路

  1. 在服務器端使用/usr/sbin/sshd -d -p 23在23端口以debug模式在前台啟動sshd;
  2. 在客戶端使用ssh -p 23 user@server_ip嘗試連接,查看服務端報錯信息。

上述操作后,服務端報錯提示~/.ssh/authorized_keys因為文件權限問題不能打開,說明是authorized_keys文件權限有問題。
~/.ssh權限設置成700,~/.ssh/authorized_keys設置成600,再次在debug端口嘗試連接。
debug端口可以連接成功,但是默認22端口仍然連接失敗,在/etc/ssh/sshd_config中將LogLevel改為Debug,重啟sshd服務,再次嘗試連接,同時使用tail -f /var/log/secure實時查看日志信息。
仍然報錯提示~/.ssh/authorized_keys因為文件權限問題不能打開。

考慮是SELinux權限問題導致。在用戶路徑下執行restorecon -FRv ~/.ssh重置ssh路徑的安全上下文,再次嘗試無密碼連接,成功


免責聲明!

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



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