关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

Linux安全:在CentOS/Redhat上禁用Root SSH登录

发布时间:2022/4/28 14:31:28
香港云服务器

为什么要禁用根ssh登录?因为每个Linux服务器都有一个root用户。如果您允许root用户使用ssh登录,黑客可能会试图强行使用您的root密码。但如果您创建另一个用户并禁用根ssh登录,黑客就不知道您的用户名,所以暴力攻击是无用的。新包装的用户可以使用sudo或su进行系统管理。

本教程将向您展示如何创建可以使用su或sudo的用户帐户,以及如何在CentOS/Redhat上禁用root ssh登录。

创建一个新的用户帐户

1.使用以下命令创建用户帐户。在本例中,我将使用用户名newuser。adduser命令将创建用户、初始组及其主目录。

adduser newuser

2.为用户设置密码。你必须输入两次密码。

passwd newuser

3.现在验证您可以使用新用户帐户通过ssh登录。默认情况下,新创建的用户可以使用su命令切换到root。

[[email protected] ~]$ su - Password: [[email protected] ~]$ whoami root

如果由于某种原因无法使用su命令,请将用户添加到控制盘组。

usermod -G wheel newuser

4.但它不能使用sudo命令。如果希望用户帐户使用sudo命令,请以root用户身份执行以下命令:

yum install sudo echo 'newuser ALL=(ALL) ALL' >> /etc/sudoers

5.现在验证用户帐户是否可以使用sudo命令。

禁用根用户的SSH登录

现在您有了一个单独的用户帐户,可以使用su或sudo来获得root权限,是时候禁用root ssh登录了。首先用你最喜欢的文本编辑器编辑/etc/ssh/sshd_配置文件。我喜欢使用vi编辑器。

vi /etc/ssh/sshd_config

找到以下行:

#PermitRootLogin yes

将其更改为:

PermitRootLogin no

保存文件。现在,检查您的新用户帐户是否可以通过ssh登录非常重要,因为我们将重新启动ssh服务,之后您将无法再通过ssh以root用户身份登录。

systemctl restart ssh

现在只有新用户帐户可以通过ssh登录。如果您尝试以root用户身份ssh登录,即使您键入的密码正确,您仍然会收到一个“权限拒绝”错误。