问题:
设置ssh免密码登陆的时候,发现有一些机器设置不生效。有一些机器正常。
跟踪:
tail /var/log/secure -n 20
错误日志如下:
Dec 8 09:25:22 hdp-2 sshd[5678]: Authentication refused: bad ownership or modes for directory /root
翻译:拒绝认证:目录/根目录的所有权或模式错误
原因:
查看了一下:我的root用户目录的权限的777
sshd为了安全,对属主的目录和文件权限有所要求。如果权限不对,则ssh的免密码登陆不生效。
用户目录权限为 755 或者 700,就是不能是77x。
解决方案:
[root@hdp-2 ~]# sudo chmod 755 /root/
将root权限改为755
注:如果希望ssh公钥生效需满足至少下面3个条件:
1) .ssh目录的权限必须是700
sudo chmod 700 /root/.ssh/
2) .ssh/authorized_keys文件权限必须是600
sudo chmod 600 /root/.ssh/authorized_keys
3) 用户目录权限为 755 或者 700,就是不能是77x。
sudo chmod 755 /root/