centos的openssh 5.3升级到6.6.1后,putty连接上去输入用户名和密码后提示“Access denied”.
后边发现一种解决方法:
/etc/ssh/sshd_config
"UsePAM yes" 改为 “UsePAM no”
重启sshd服务即可
后来发现有的机器上必须改为"UsePAM yes"才行。
后来仔细调查下发现:
在禁用SELINUX的情况下,将"UsePAM yes" 改为 “UsePAM no”就可以。
在启用SELINUX的情况下,需要将"UsePAM no" 改为 “UsePAM yes”,同时将/etc/pam.d/sshd中的"auth include postlogin"注释掉才行。
测试方法
/usr/sbin/sshd -d 2>&1 可查看sshd服务调试输出
ssh -v 127.0.0.1 可查看ssh调试输出
/var/log/secure 可查看PAM日志