问题描述:

首先ssh root可以 普通用户不行

Permission denied (publickey,gssapi-with-mic).


然后root登陆上去su到普通用户也是Permission denied

[root@WX-196 home]# su - jiankong

su: warning: cannot change directory to /home/jiankong: Permission denied



排查思路:

首先ssh出问题的原因比较多,之前提过,主要从以下几点:

1 最基本的 私钥公钥对不对 注意如果authorized_keys文件在直接粘公钥时容易变成多行,最好用home end键确认在一行里

2 sshd_config配置里是否加了ACCEPT user@IP的限制

3 ~/.ssh目录一般700 ~/.ssh/authorized_keys文件要为600 (这点也容易忽略)

4 sshd_config里关于PermitRootLogin PasswordAuthentication设置

5 ~家目录和每一个上层目录是否有权限 (本次问题就出在这)


最后还是推荐ssh-copy-id [-i [identity_file]] [user@]machine 来建立信任,能很大程度避免上述问题


关于su的报错,其实已经很明显了,

[root@WX-196 home]# su - jiankong

su: warning: cannot change directory to /home/jiankong: Permission denied

就是目录权限问题,这点要确定,但在排查了 /home/jiankong之后没发现任何问题,甚至删掉重建都不可以,这时就往复杂想了,什么wheel组、pam模块、su权限、bash权限,最后在 ll /home的时候发现了这么一条

drwx------ 24 xxuser xxuser 4096 Oct 29 10:45 ..

终于发现了原因,上层目录也就是home目录被别人误改了权限,处理xxuser,其他用户都没了权限

改过来就可以了

如果安装上面思路来这个问题就可以早点发现了,当时光看/home/jiankong权限正常,却没看/home的权限,虽然这种情况不多,但也要在今后注意





在排查secure日志发现这么两行,session open后立马closed 以为pam模块有问题,后验证没什么参考价值,正常登陆就会记一条open,退出记条closed ,主要还是其他原因

Oct 29 11:27:07 WX-196 sshd[13878]: pam_unix(sshd:session): session opened for user jiankong by (uid=0)

Oct 29 11:27:07 WX-196 sshd[13878]: pam_unix(sshd:session): session closed for user jiankong