Linux無法免密登錄的原因


一、免密登錄的方法

下面操作是把/root/.ssh/id_dsa.pub文件內容追加到192.168.7.100系統中的/root/.ssh/authorized_keys文件中
# 創建並發送密鑰,第一次登錄需要輸入yes
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa >/dev/null 2>&1
ssh-copy-id -i /root/.ssh/id_dsa.pub root@192.168.7.100
ssh 192.168.7.100

二、一般無法登錄的原因有以下幾種

  1. 檢查~/.ssh目錄的權限是否為700
  2. 檢查~/.ssh/authorized_keys文件的權限是否為600
  3. 檢查~/.ssh/authorized_keys文件中的公鑰是否正確
  4. 檢查/etc/ssh/sshd_config 中的 AuthorizedKeysFile .ssh/authorized_keys 文件名是否正確

三、我遇到的問題未在上述原因中

按上以操作完成之后,ssh登錄還是提示要輸入密碼,於是檢查以上幾項,都正確。此時需要查看secure安全日志

# ssh 192.168.7.73
root@192.168.7.73's password:

# tailf /var/log/secure Jun 19 14:57:58 linux-node3 sshd[30446]: Authentication refused: bad ownership or modes for directory /root

發現和root目錄權限有關系

# 查看當前/root目錄的權限
# ll -d /root/
drwxr-xr-x. 4 1000 1000 4096 Jun 19 14:56 /root/

# 正常系統的權限
# ll -d /root/
dr-xr-x---. 8 root root 4096 Jun 19 14:55 /root/

# 調整/root目錄的權限
# chmod 550 /root/
# chown root.root /root/

修改完成之后,再測試免密正常已正常

 [root@jenkins ~]# ssh 192.168.7.73
  Last login: Wed Jun 19 15:07:08 2019 from 192.168.25.50
 [root@linux-node3 ~]# 


免責聲明!

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



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