Linux服务安全之修改SSH限制root账户登录

在Linux系统中,SSH(Secure Shell)是一种常见的远程登录和管理工具,默认情况下,SSH允许root用户通过密码或密钥进行远程登录,这可能会带来安全风险,为了提高系统的安全性,我们可以修改SSH配置,限制root账户的远程登录。

Linux服务安全之修改SSH限制root账户登录
(图片来源网络,侵删)

1. 修改SSH配置文件

我们需要修改SSH的配置文件,在大多数Linux发行版中,SSH配置文件位于/etc/ssh/sshd_config,使用文本编辑器打开该文件,

sudo vi /etc/ssh/sshd_config

在配置文件中,找到以下两行:

#PermitRootLogin yes
#PasswordAuthentication yes

将这两行的注释符号(#)去掉,并将yes改为no,如下所示:

PermitRootLogin no
PasswordAuthentication no

保存并关闭文件,接下来,我们需要重启SSH服务以使更改生效,在大多数Linux发行版中,可以使用以下命令重启SSH服务:

sudo systemctl restart sshd

2. 禁用root远程密码登录

除了修改SSH配置文件外,我们还可以禁止root用户通过密码进行远程登录,在/etc/ssh/sshd_config文件中,找到以下行:

#PermitRootLogin withoutpassword

将注释符号(#)去掉,并将withoutpassword保留,如下所示:

PermitRootLogin withoutpassword

保存并关闭文件,重启SSH服务以使更改生效:

sudo systemctl restart sshd

现在,root用户将无法通过密码进行远程登录,如果需要使用密码登录,可以创建一个新的非root用户,并为其分配sudo权限。

3. 禁用root远程密钥登录

除了禁止root用户通过密码进行远程登录外,我们还可以禁止root用户通过密钥进行远程登录,在/etc/ssh/sshd_config文件中,找到以下行:

#AuthorizedKeysFile      %h/.ssh/authorized_keys

将注释符号(#)去掉,并将该行保留,如下所示:

AuthorizedKeysFile      %h/.ssh/authorized_keys

保存并关闭文件,重启SSH服务以使更改生效:

sudo systemctl restart sshd

现在,root用户将无法通过密钥进行远程登录,如果需要使用密钥登录,可以创建一个新的非root用户,并为其生成和分发密钥,确保为该用户在/etc/ssh/sshd_config文件中添加以下行:

AllowUsers <username>@*

其中<username>是新创建的非root用户的用户名,保存并关闭文件,重启SSH服务以使更改生效:

sudo systemctl restart sshd

4. 归纳

通过修改SSH配置文件和重启SSH服务,我们可以限制root账户的远程登录,这将提高系统的安全性,防止未经授权的用户访问系统,建议创建新的非root用户,并为其分配sudo权限和密钥访问权限,以便进行远程管理。

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/677496.html

本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。

(0)
未希新媒体运营
上一篇 2024-06-08 18:16
下一篇 2024-06-08 18:17

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

产品购买 QQ咨询 微信咨询 SEO优化
分享本页
返回顶部
云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购 >>点击进入