对 /etc/ssh/sshd_config 进行了以下更改:
PermitRootLogin yes
PasswordAuthentication yes
#StrictModes yes
AllowUsers root other users follow here
为 root 添加了密码
终止 sshd 并重新启动
仍然无法以 root 身份 ssh 到系统(即使使用系统上的 localhost)
答案1
要测试是否确实有 root 的密码/etc/shadow
,请输入:
su
输入 root 密码。如果密码被接受,请输入:
whoami
该命令应返回root
。
如果这个有效但 ssh 无效,那么问题很可能出在文件上/etc/ssh/sshd_config
。我看不出你发布的代码片段有什么明显错误,尽管我会注释掉这一AllowUsers
行(这只是为了增加安全性,你似乎并不担心被黑客入侵)。
请注意,允许 root 通过 ssh 登录是极其糟糕的主意!您几乎是在自找麻烦。
某些发行版(如 Ubuntu)禁用 root 登录,并要求使用 sudo 进行管理员操作。当然,有办法解决这个问题,你似乎在试图破坏 Ubuntu 的安全模型。当然这是你的选择。但是,Ubuntu 团队可能已经进行了其他更改,禁止其他地方的 root 登录。
答案2
如果从另一台主机 ssh 到系统。您所描述的应该足够了。首先,通过再次更改 root 密码来验证它,sudo passwd
接下来,重新启动 sshd 守护进程,发出命令sudo service sshd restart
。
ssh username@ipv4address
从另一个站点尝试 。