您当前的位置:首页 > 电脑百科 > 软件技术 > 操作系统 > linux百科

Linux 系统安装完后就可以用了吗?其实还有一些后续工作需要做

时间:2023-03-08 11:36:52  来源:微信公众号  作者: TIAP

云计算极大地改变了服务器应用场景,许多平台都提供免费的 linux 云服务器,你可以在几分钟内通过这些平台部署一台 Linux 服务器。

不过,作为云服务器,也有弊端。因为它是在互联网上可见的,所以一旦你启动了一台新服务器,黑客便会通过脚本自动扫描错误的配置或者漏洞。

所以,在安装完 Linux 系统后,还需要做一些安全相关的配置,以提升系统的安全性。

下面是一张使用 FAIl2ban 工具查看系统信息的截图:

图片

如上图所示,有 212 次失败的登录尝试和 6 个被阻止的 IP 地址,这些都是未经授权的人或脚本对系统进行的入侵。

所以,对系统做一些安全的配置是十分有必要的。如下我们总结了一些在安装 Linux 系统后建议采取的措施。

1,确保设置了非 root 用户

root 用户具有最高权限,但是我们并不是所有工作都需要使用 root 用户。

同时,几乎所有 Linux 系统中都有 root 用户,所以攻击者通常会使用 root 用户名来尝试登录系统。

所以,在平时工作中最好以非 root 用户登录,且 ssh 禁用远程访问的 root 登录。

那么怎么添加用户呢?我们在先前的文章中介绍过添加用户的方法,大家可以参考:​​使用 useradd 命令在 Linux 中添加新用户​​

添加用户可使用 root 用户登录系统,然后使用 useradd 命令添加新用户,如下所示:

useradd <username>

使用 passwd 命令为新添加的用户设置密码:

passwd <username>

2,确保非 root 用户具有 sudo 权限

如果需要使用 ssh 远程登录系统,且需要执行 root 权限的活动,那么所使用的登录账户需要具有 sudo 权限。

在 Ubuntu 和 centos 中创建 sudo 用户的过程是相似的,但是 sudo 用户组是不同的。

首先以 root 身份登录系统。

在 CentOS 和 Red  Hat 上,wheel 组是具有 sudo 权限的用户组,可以使用 usermod 命令将用户添加到该用户组中。

usermod -aG wheel <username>

Ubuntu 使用 sudo 用户组来管理 sudo 用户:

usermod -aG sudo <username>

3,启用基于密钥的 ssh 身份验证

为 ssh 启用基于密钥的身份验证非常重要,这样当我们禁用基于密码的身份验证时,它就可以正常工作。

暴力破解或者盗取密码是入侵者获取系统访问权限的常用方式,如果我们禁用基于密码的 ssh 登录,采用基于密钥的 ssh 连接,那么攻击者就无法根据用户名和密码访问服务器了。

启用 ssh 后,需要做的就是在个人计算机上生成 ssh 密钥,有了 ssh 密钥,就需要为非 root 用户将公钥添加到服务器的 authorized_keys 中。

4,确保允许 ssh 通过 ufw 防火墙

在系统启用防火墙之前,应确保让其允许 ssh,要不然就无法通过 ssh 访问系统。

关于防火墙,Ubuntu 使用 ufw(Uncomplicated Firewall),CentOS 和 Red Hat 使用 firewalld。

在 CentOS 和 Red Hat 中,使用 firewall-cmd 命令:

sudo firewall-cmd --znotallow=public --add-service=ssh --permanent

在 Ubuntu 中,使用 uwf 命令:

sudo ufw allow ssh

5,启用防火墙(在允许 ssh 之后)

迄今为止,防火墙仍是系统安全的一道屏障,在 CentOS 和 Red Hat 中,启用  firewalld systemd 服务:​

sudo systemctl start firewalld
sudo systemctl enable firewalld

在 Ubuntu 中,使用如下命令:

sudo ufw enable

6,设置 ssh 不显示 banner 信息

攻击者可以通过运行服务的软件中的漏洞来危害服务器。banner 会显示正在运行的 OpenSSH 或操作系统版本的信息。所以我们需要设置 ssh 不显示 banner。

在 CentOS 和 Red Hat 中默认就是不显示 banner,所以关于这点不需要做额外的工作。但是在 Ubuntu 中,需要使用如下命令来禁用 banner:

sudo echo "DebianBanner no" >> /etc/ssh/sshd_config.d/10-my-sshd-settings.conf

7,禁用所有 ssh 转发

经常会有系统管理员通过 ssh 转发来加密可能传递的明文信息,如果你不用的话,应该将其关闭。攻击者可能会使用转发来加密信息,所以你很难查看,或者使用授权的端口和服务获取可能被阻止传递的信息。

在 CentOS 或 Red Hat 中,将如下内容添加到 /etc/ssh/sshd_config 中:

DisableForwarding yes

在 Ubuntu 中,添加 DisableForwarding yes 到 10-my-sshd-settings.conf 文件中,如下:

sudo echo "DisableForwarding yes" >> /etc/ssh/sshd_config.d/10-my-sshd-settings.conf

8,禁止 root 用户登录 ssh

几乎每个 Linux 系统中都有 root 用户,允许其登录 ssh 是比较危险的。

在 CentOS 或 Red Hat 中,在文件 /etc/ssh/sshd_config 中找到 PermitRootLogin yes,将其改为:

PermitRootLogin no

Ubuntu 中,在10-my-sshd-settings.conf 文件中添加 PermitRootLogin no:

sudo echo "PermitRootLogin no" >> /etc/ssh/sshd_config.d/10-my-sshd-settings.conf

9,禁用基于密码的 ssh 身份验证

在禁用 ssh 密码验证之前,首先需要按照第 3 点中所属配置和测试了基于密钥的身份验证。

我们在先前的文章中介绍过如何禁用基于密码的 ssh 身份验证,可参考:​​如何禁止使用密码通过 ssh 连接远程服务器​​

CentOS 或 Red Hat 中,在文件 /etc/ssh/sshd_config 中找到 PasswordAuthentication yes,将其改为:

PasswordAuthentication no

在 Ubuntu 中,在文件 10-my-sshd-settings.conf 中添加内容 PasswordAuthentication no:

sudo echo "PasswordAuthentication no" >> /etc/ssh/sshd_config.d/10-my-sshd-settings.conf

10,忽略 rhosts

rhosts 与 rsh 相关联,rsh 是一种被 secure shell 取代的遗留协议。如果用户试图创建恶意 rhosts 文件,此设置将忽略它。

CentOS 或 Red Hat 系统中,在文件 /etc/ssh/sshd_config 中找到 #IgnoreRhosts yes 将前面的#删掉(即注释打开):

IgnoreRhosts yes

Ubuntu 中,在文件 10-my-sshd-settings.conf 中添加 IgnoreRhosts yes:

sudo echo "IgnoreRhosts yes" >> /etc/ssh/sshd_config.d/10-my-sshd-settings.conf

11,安装配置 fail2ban 来加强 ssh 安全性

Fail2ban会监视已配置服务(如SSH)的日志文件,并阻止恶意用户的IP地址在设定的时间内多次尝试后连接到您的服务器。

例如,如果攻击者在三小时内进行了5次以上的失败尝试,他的IP地址将被封锁12小时。

Fail2ban 也可以配置为保护其他服务,例如由 Nginx web 服务器或 Apache web 服务器支持的网站

12,配置自动安全更新(适用于Red Hat和CentOS)

如前所述,如果漏洞比较多,带有漏洞的过时服务可能会让攻击者进入你的服务器,甚至无需登录!快速应用安全更新以降低此风险至关重要。

Ubuntu 会默认启用自动安全更新,所以无需执行更新操作。

要在 CentOS 和 Red Hat 上配置自动更新,需要安装一个名为 dnf-automatic  的应用程序,并使用以下命令为其启用计时器:​

sudo dnf upgrade
sudo dnf install dnf-automatic -y
sudo systemctl enable --now dnf-automatic.timer

然后通过如下命令来检查一下:

sudo systemctl status dnf-automatic.timer


Tags:Linux   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
Linux获取Redis 性能指标方法
一、监控指标&Oslash; 性能指标:Performance&Oslash; 内存指标: Memory&Oslash; 基本活动指标:Basic activity&Oslash; 持久性指标: Persistence&Oslash; 错误指标:Error二、监...【详细内容】
2024-04-11  Search: Linux  点击:(3)  评论:(0)  加入收藏
微软 Win11 Linux 子系统(WSL)发布 2.2.2 版本
IT之家 4 月 8 日消息,微软近日更新 Windows Subsystem for Linux(WSL),最新 2.2.2 版本中带来了诸多改进,重点更新了 nft 规则,可以让 IPv6 流量通过 Linux 容器。图源: dev.to,AI...【详细内容】
2024-04-08  Search: Linux  点击:(6)  评论:(0)  加入收藏
从原理到实践:深入探索Linux安全机制
Linux 是一种开源的类Unix操作系统内核,由Linus Torvalds在1991年首次发布,其后又衍生出许多不同的发行版(如Ubuntu、Debian、CentOS等)。前言本文将从用户和权限管理、文件系统...【详细内容】
2024-03-27  Search: Linux  点击:(16)  评论:(0)  加入收藏
在Linux系统中,如何处理内存管理和优化的问题?
本文对 Linux 内存管理和优化的一些高级技巧的详细介绍,通过高级的内存管理技巧,可以帮助系统管理员和开发人员更好地优化 Linux 系统的内存使用情况,提高系统性能和稳定性。在...【详细内容】
2024-03-26  Search: Linux  点击:(10)  评论:(0)  加入收藏
Linux 6.9-rc1 内核发布:AMD P-State 首选核心、BH 工作队列
IT之家 3 月 25 日消息,Linus Torvalds 宣布,Linux 6.9 内核的首个 RC(候选发布)版 Linux 6.9-rc1 发布。▲ Linux 6.9-rc1Linus 表示,Linux 内核 6.9 看起来是一个“相当正常”...【详细内容】
2024-03-25  Search: Linux  点击:(11)  评论:(0)  加入收藏
Linux发行版 Ubuntu 迎更新 界面设计灵感来自 Windows 11
近日,一位第三方开发者推出了一款名为“Wubuntu”的特殊Linux发行版。这款系统源自主流的Ubuntu版本,但在界面设计上却借鉴了微软最新的Windows 11风格,甚至在其中融入了微软标...【详细内容】
2024-02-27  Search: Linux  点击:(43)  评论:(0)  加入收藏
Win + Ubuntu 缝合怪:第三方开发者推出“Wubuntu”Linux 发行版
IT之家 2 月 26 日消息,一位第三方开发者推出了一款名为“Wubuntu”的缝合怪 Linux 发行版,系统本身基于 Ubuntu,但界面为微软 Windows 11 风格,甚至存在微软 Windows 徽标。据...【详细内容】
2024-02-27  Search: Linux  点击:(49)  评论:(0)  加入收藏
Linux中磁盘和文件系统工作原理解析
在Linux系统中,一切皆文件的概念意味着所有的资源,包括普通文件、目录以及设备文件等,都以文件的形式存在。这种统一的文件系统管理方式使得Linux系统具有高度的灵活性和可扩展...【详细内容】
2024-02-20  Search: Linux  点击:(51)  评论:(0)  加入收藏
Linux子系统概览
inux操作系统是一个模块化的系统,由多个子系统组成。这些子系统协同工作,使Linux能够执行各种任务。了解Linux的子系统有助于更好地理解整个操作系统的运作机制。以下是Linux...【详细内容】
2024-02-01  Search: Linux  点击:(77)  评论:(0)  加入收藏
Linux内核:系统之魂与交互之源
内核,作为任何基于Linux的操作系统的心脏,扮演着至关重要的角色。它不仅是计算机系统软件与硬件之间的桥梁,更是确保系统稳定、高效运行的关键。内核提供了一系列核心功能,为上...【详细内容】
2024-02-01  Search: Linux  点击:(68)  评论:(0)  加入收藏
▌简易百科推荐
微软 Win11 Linux 子系统(WSL)发布 2.2.2 版本
IT之家 4 月 8 日消息,微软近日更新 Windows Subsystem for Linux(WSL),最新 2.2.2 版本中带来了诸多改进,重点更新了 nft 规则,可以让 IPv6 流量通过 Linux 容器。图源: dev.to,AI...【详细内容】
2024-04-08    IT之家  Tags:Linux   点击:(6)  评论:(0)  加入收藏
从原理到实践:深入探索Linux安全机制
Linux 是一种开源的类Unix操作系统内核,由Linus Torvalds在1991年首次发布,其后又衍生出许多不同的发行版(如Ubuntu、Debian、CentOS等)。前言本文将从用户和权限管理、文件系统...【详细内容】
2024-03-27  凡夫编程  微信公众号  Tags:Linux安全   点击:(16)  评论:(0)  加入收藏
在Linux系统中,如何处理内存管理和优化的问题?
本文对 Linux 内存管理和优化的一些高级技巧的详细介绍,通过高级的内存管理技巧,可以帮助系统管理员和开发人员更好地优化 Linux 系统的内存使用情况,提高系统性能和稳定性。在...【详细内容】
2024-03-26  编程技术汇  微信公众号  Tags:Linux   点击:(10)  评论:(0)  加入收藏
Linux 6.9-rc1 内核发布:AMD P-State 首选核心、BH 工作队列
IT之家 3 月 25 日消息,Linus Torvalds 宣布,Linux 6.9 内核的首个 RC(候选发布)版 Linux 6.9-rc1 发布。▲ Linux 6.9-rc1Linus 表示,Linux 内核 6.9 看起来是一个“相当正常”...【详细内容】
2024-03-25    IT之家  Tags:Linux   点击:(11)  评论:(0)  加入收藏
轻松实现Centos系统的软件包安装管理:yum指令实战详解
yum 是一种用于在 CentOS、Red Hat Enterprise Linux (RHEL) 等基于 RPM 的 Linux 发行版上安装、更新和管理软件包的命令行工具。它可以自动解决软件包依赖关系,自动下载并...【详细内容】
2024-02-27  凡夫贬夫  微信公众号  Tags:Centos   点击:(54)  评论:(0)  加入收藏
Win + Ubuntu 缝合怪:第三方开发者推出“Wubuntu”Linux 发行版
IT之家 2 月 26 日消息,一位第三方开发者推出了一款名为“Wubuntu”的缝合怪 Linux 发行版,系统本身基于 Ubuntu,但界面为微软 Windows 11 风格,甚至存在微软 Windows 徽标。据...【详细内容】
2024-02-27    IT之家  Tags:Ubuntu   点击:(49)  评论:(0)  加入收藏
Linux中磁盘和文件系统工作原理解析
在Linux系统中,一切皆文件的概念意味着所有的资源,包括普通文件、目录以及设备文件等,都以文件的形式存在。这种统一的文件系统管理方式使得Linux系统具有高度的灵活性和可扩展...【详细内容】
2024-02-20  王建立    Tags:Linux   点击:(51)  评论:(0)  加入收藏
Linux子系统概览
inux操作系统是一个模块化的系统,由多个子系统组成。这些子系统协同工作,使Linux能够执行各种任务。了解Linux的子系统有助于更好地理解整个操作系统的运作机制。以下是Linux...【详细内容】
2024-02-01    简易百科  Tags:Linux   点击:(77)  评论:(0)  加入收藏
Linux内核:系统之魂与交互之源
内核,作为任何基于Linux的操作系统的心脏,扮演着至关重要的角色。它不仅是计算机系统软件与硬件之间的桥梁,更是确保系统稳定、高效运行的关键。内核提供了一系列核心功能,为上...【详细内容】
2024-02-01  松鼠宝贝    Tags:Linux内核   点击:(68)  评论:(0)  加入收藏
如何确保Linux进程稳定与持久
在Linux系统中,进程的稳定性与持久性对于维持系统的持续运行至关重要。然而,由于各种原因,进程可能会面临崩溃或系统重启的情况。为了确保关键进程能够持续运行,我们必须采取一...【详细内容】
2024-01-19  松鼠宝贝    Tags:Linux进程   点击:(85)  评论:(0)  加入收藏
站内最新
站内热门
站内头条