在 Linux 中禁用或启用 SSH 根登录并限制 SSH 访问
大家都知道,Linux系统自带root用户访问权限,并且默认情况下,对外界启用root访问权限。
出于安全原因,为未经授权的用户启用 ssh 根访问权限并不是一个好主意。因为任何黑客都可以尝试暴力破解您的密码并访问您的系统。
因此,最好拥有另一个经常使用的帐户,然后在必要时使用“ su – ”命令切换到root用户。在开始之前,请确保您有一个常规用户帐户,并且使用该帐户,您可以使用 su或sudo获得 root 访问权限。
[ 你可能还喜欢:如何保护和强化 OpenSSH 服务器]
在Linux中,创建一个单独的帐户非常容易,以root用户身份登录,然后只需运行adduser 命令即可创建单独的用户。创建用户后,只需按照以下步骤禁用通过SSH 的root登录。
我们使用sshd主配置文件来禁用root登录,这可能会减少并阻止黑客获得Linux机器的root访问权限。我们还将了解如何再次启用root访问权限以及如何根据用户列表限制 ssh 访问。
禁用 SSH Root 登录
要禁用root登录,请使用您选择的编辑器打开主 ssh 配置文件/etc/ssh/sshd_config 。
# vi /etc/ssh/sshd_config
在文件中搜索以下行。
#PermitRootLogin no
从行首删除“ # ”。使该行看起来与此类似。
PermitRootLogin no
接下来,我们需要重新启动SSH守护进程服务。
# systemctl restart sshd OR # /etc/init.d/sshd restart
现在尝试以 root 用户身份登录,您将收到“权限被拒绝”错误。
$ ssh root@192.168.0.102 root@192.168.0.102's password: Permission denied, please try again.
因此,从现在开始以普通用户身份登录,然后使用“su”命令切换到 root 用户。
$ ssh root@192.168.0.102 example@192.168.0.102's password: Last login: Mon Dec 27 15:04:58 2021 from 192.168.0.161 $ su - Password: Last login: Mon Dec 27 15:05:07 IST 2021 on pts/1
启用 SSH Root 登录
要启用 ssh root 日志记录,请打开文件/etc/ssh/sshd_config。
# vi /etc/ssh/sshd_config
搜索以下行并删除开头的“ # ”并保存文件。
PermitRootLogin yes
重新启动sshd服务。
# systemctl restart sshd OR # /etc/init.d/sshd restart
现在尝试以root用户身份登录。
$ ssh root@192.168.0.102 root@192.168.0.102's password: Last login: Mon Dec 27 15:14:54 2021 from 192.168.0.161
限制 SSH 用户登录
如果系统上有大量用户帐户,那么将远程 SSH 访问权限限制为真正需要的用户是有意义的。打开/etc/ssh/sshd_config 文件。
# vi /etc/ssh/sshd_config
在文件底部添加一个AllowUsers行,以空格分隔用户名列表。例如,用户example和sheena都有权访问远程 ssh。
AllowUsers example sheena
现在重新启动ssh服务。