我目前正在远程 RedHat 服务器(RHEL 版本 6.7 x86_64)上工作。
我可以使用服务器管理员提供的用户 ID 和密码以用户身份登录。
但是当我尝试使用命令以 root 身份登录时sudo su
,控制台会无限挂起。
要摆脱这种情况,我必须按ctrl+c键。此外,当我使用su - root
或 时su root
,它会显示密码错误。
几天前情况并非如此。
以前,我能够使用sudo su
然后输入服务器管理员提供的相同密码以 root 身份登录。
为了解决这个问题,我做了以下事情:
- 已检查
/etc/hosts
,/etc/passwd
,/etc/shadow
,/etc/securetty
文件 - 还检查
/etc/pam.d/sudo
了/etc/pam.d/su
文件 chmod 4755 /bin/su
chmod 644 /etc/securetty
- 检查根账户到期日期(未到期)
我还需要做什么才能解决这个问题?
答案1
您必须编辑 /etc/ssh/sshd_config 文件并检查允许Root登录已启用。
PermitRootLogin yes
然后重新启动 sshd:
~$ sudo service ssh restart
请注意,允许通过 ssh 以 root 身份登录是一个安全漏洞。仅出于测试目的执行此操作,并考虑改用 sudo。
答案2
我在 RHEL9 上遇到了这个问题。解决方案很简单。你必须有“/etc/ssh/sshd_config“配置存在。如果没有,请使用您的包管理器安装 ssh 服务。对于 RedHat,
yum install openssh-server
现在,配置将被创建,您应该能够打开“/etc/ssh/sshd_config“使用任何编辑器。搜索字符串“验证",并添加以下行。“PermitRootLogin yes”。保存并关闭文件。不要忘记重新启动“sshd“服务。然后尝试使用 root 登录。如果你没有忘记 root 密码,希望它能起作用 :D