linux root用户无法免密登录的问题

一、免密登录的方法

下面操作是把/root/.ssh/id_dsa.pub文件内容追加到系统中的/root/.ssh/authorized_keys文件中;
# 创建并发送密钥,第一次登录需要输入yes
ssh-keygen -t rsa -P ""
ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.xx.xx.xxx
ssh 192.xx.xx.xxx

二、一般无法登录的原因有以下几种

  1. 检查~/.ssh目录的权限是否为700
  2. 检查~/.ssh/authorized_keys文件的权限是否为600
  3. 检查~/.ssh/authorized_keys文件中的公钥是否正确
  4. 检查/etc/ssh/sshd_config 中的  "AuthorizedKeysFile .ssh/authorized_keys"  文件名是否正确

三、我遇到的问题未在上述原因中

按上以操作完成之后,ssh登录还是提示要输入密码,于是检查以上几项,都正确。此时需要查看secure安全日

# 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/

修改完成之后,再测试免密登录已正常;

 

posted @ 2022-01-19 15:57  米兰的小铁將  阅读(834)  评论(0)    收藏  举报