我想远程登录 Slackware 上的 SSH 服务器。我可以以非 root 用户身份登录,例如 mark,但不能以 root 用户身份登录。当我输入 root 密码时,我收到消息“身份验证失败”。在我的 /etc/ssh/sshd_config 文件中,我启用了以下选项:
PermitRootLogin 是
PasswordAuthentication 是
我该怎么做才能以 root 用户身份登录?
答案1
您可以尝试检查几件事。/etc/passwd
检查文件是否设置了 shell 以及检查 root 用户.profile
和.bashrc
文件中可能有阻止您登录的内容。
编辑
@Burgi。该/etc/passwd
文件将包含用户登录的 shell。通常,您将拥有/bin/bash
或其他相关 shell。一旦用户登录,与之关联的 passwd 文件中的 shell 环境将被执行,并且用户会话将使用该 shell 运行。但是,如果没有有效的 shell,则用户将无法登录,因为没有有效的 shell 环境可以登录。还有/sbin/nologin
“显示帐户不可用的消息并以非零值退出。它旨在作为拒绝登录帐户的替代 shell 字段。”man nologin
以了解更多详细信息。您也可以使用它/bin/false
来获得类似的效果。检查 SFTP 的 Chroot。
对于.profile
和.bashrc
文件,它们都是可执行文件,因此如果logout
在这些文件中有,它将导致用户注销。由于这发生在登录时,因此看起来好像用户没有登录。
希望这有用。