我试图虚拟化一个旧的Linux服务器,并且PtoV软件需要通过ssh作为root用户的密码login。 但是,根login被阻止,在客户端有一个“ Permission Denied ”错误,服务器端有一个“ Failed Password for root ”(当sshd在debugging模式下运行时)。
我在/etc/ssh/sshd_config设置了PermitRootLogin yes 。
这是一个老式的RedHat 7.3服务器,几年前已经加载了像Bastille这样的强化脚本,并且有许多旧操作系统的残余(像内核不再支持的ipchains)。 总之,我不知道原来的系统有什么改变,但有很多。
我的问题是: 还有什么可以阻止我的根login在这台服务器上?
更多信息:/etc/pam.d/sshd
auth required pam_stack.so service=system-auth auth required pam_nologin.so account required pam_stack.so service=system-auth password required pam_stack.so service=system-auth session required pam_stack.so service=system-auth session required pam_limits.so session optional pam_console.so
将/etc/pam.d/system-auth
auth required /lib/security/pam_env.so auth sufficient /lib/security/pam_unix.so likeauth nullok auth required /lib/security/pam_deny.so account required /lib/security/pam_unix.so password required /lib/security/pam_cracklib.so retry=3 type= password sufficient /lib/security/pam_unix.so nullok use_authtok md5 shadow password required /lib/security/pam_deny.so session required /lib/security/pam_limits.so session required /lib/security/pam_unix.so
有人可以告诉我,哈希algorithm可能是罪魁祸首吗? 请记住,我可以作为非特权用户login。
可以在PAMconfiguration中禁用通过sshlogin。
结果是/etc/init.d/sshd脚本没有$ OPTIONSvariables,这将是对configuration文件的引用。 因此,sshd根本就没有任何configuration文件,因此默认为“PermitRoodLogin no”。
我通过在/etc/init.d/sshd附近添加下面一行来解决这个问题:
OPTIONS="-f /etc/ssh/sshd_config"
希望这可以帮助别人。
为了扩大Ignacio的说法,我猜你正在使用pam_securetty,ttys不在/etc/securetty 。 我不记得RH7.3中的tty名字是什么。 Ssh以普通用户身份运行who并运行who查看命名系统。
从embobo开始,我很高兴(!)有一大堆的RH73盒子,我不允许升级。 他们告诉我,远程login在pts/0 , pts/1 , pts/2等等。
你可以尝试添加到/etc/securetty ,看看是否改善事项? 可能最好将它们添加到(比如说)pts / 9,这取决于通常login的其他用户数量。
我有同样的问题,我可以与任何用户进行身份validation,但是当我尝试使用root时,我得到这个消息“访问被拒绝”。 这个问题是通过在/etc/ssh/sshd_config禁用UsePAM yes来解决的。
将UsePAM yes更改为#UsePAM yes