如何通过 SSH 禁用对 VPS 的 Root 访问?

如何通过 SSH 禁用对 VPS 的 Root 访问?

我在 Linux 服务器上运行 VPS,选定的操作系统是 CentOS 7(64 位)。

我最近清理了 VPS,所以目前它只安装了 Plesk Onyx。现在我想在设置域和电子邮件之前通过 SSH 禁用对 VPS 的 root 访问权限。

为了实现这一点,我通过 PuTTY 终端获得了 SSH 访问权限。使用 Nano 文本编辑器,我输入了以下命令行:

# nano /etc/ssh/sshd_config

这打开了正确的文件,然后我将#PermitRootLogin条目从“是”更改为“否”;如以下屏幕截图所示:

在此处输入图片描述

我可以保存并退出文件。再次访问文件时,我还可以看到更改确实已保存。

我知道,要使这些更改生效,SSH 服务需要重新启动。为此,我尝试了以下命令行(单独):

# service ssh reload
# sudo systemctl restart sshd.service
# sudo systemctl restart sshd
# sudo systemctl restart sshd.service

上述命令行均无法确认 SSH 是否已重新启动。无论如何,我仍然能够使用 root 凭据登录 SSH。

有人能指出我可能哪里出错了吗?

答案1

在许多配置文件中,注释行显示默认值,例如在 sshd_config 文件中:

#PermitRootLogin yes

您需要更改为并删除#取消注释该行

PermitRootLogin no

对于 systemctl 和许多其他命令来说,如果它没有返回任何内容,则表示命令成功

相关内容