Linux免密登录设置失败一例
按照CSDN上的文档进行免密设置,同样的设置,有一台服务器设置不能免密登录,其他的服务器可以,这几台服务器linux版本相同,ssh版本相同,检查sshd_congfig也一样,很是奇怪。
检查目录 .ssh权限,700,正常
检查目录 .ssh下文件权限(authorized_keys应为600),正常
查防火墙,虽然selinux状态为permissive,应该也不影响,关掉之后仍是一样的现象。
根据这个帖子,修改sshd_config中的StrictModes为no,重启sshd服务后,免密登录可以了
ssh免密码登录 失败 StrictModes no_UpUpUpUpUpUpUp的博客-CSDN博客_#strictmodes yes
仔细阅读这一段:
(如果StrictModes为yes必需保证存放公钥的文件夹的拥有与登陆用户名是相同的.“StrictModes”设置ssh在接收登录请求之前是否检查用户家目录和rhosts文件的权限和所有权。这通常是必要的,因为新手经常会把自己的目录和文件设成任何人都有写权限。)
检查故障服务器的该账号的 家目录 的权限,发现为777,而其他服务器上该目录权限为755,将故障服务器该目录权限修改为755后,可以免密登录了,问题解决。
经测试,
1、该账号家目录权限改为755后,StrictModes改为yes后重启sshd服务,仍然可以免密登录。
2、该账号家目录权限改为777,免密登录失败,改为755,免密登录成功。
3、将两个服务器上的该账号家目录权限都改为777,免密登录仍然失败