Linux恶意软件兴起:保护开源软件(OSS)的九个技巧

“Linux是意软源软市场上最安全的操作系统”;多年来  ,这一直是兴件O技巧开源平台的最佳卖点之一。然而,起保与任何有关技术的护开事物一样,被犯罪分子瞄准只是意软源软时间问题  。每个操作系统、兴件O技巧软件和服务都是起保如此 。在这一点上,护开说Linux对恶意软件免疫是意软源软绝对错误的免费模板。

可悲的兴件O技巧事实是 ,只要它连接到网络,起保就容易受到攻击 。护开您使用什么操作系统并不重要——它运行的意软源软时间越长  ,就越有可能成为目标。兴件O技巧Linux也不例外。起保

过去几年里 ,考虑到企业业务需要依赖包括Linux操作系统在内的开源技术谋生,Linux系统被网络犯罪分子盯上也就不足为奇了。事实上 ,如果大胆预测的源码下载话 ,针对Linux 部署的恶意软件的兴起将在未来十年变得更加惊人。

幸运的是 ,开源开发人员可以非常快速地响应此类恶意软件攻击——漏洞通常会在数小时或数天内被发现并修补。这种敏捷性是开源软件的优点之一。

然而 ,用户和管理员也承担着责任。我们都习惯认为Linux是一个“一劳永逸”的平台,香港云服务器但事实却并非如此。简而言之 ,它是软件,不知道也不关心潜伏在黑客内心深处的危险,它只是根据其部署工作而已 。

话虽如此 ,管理员和用户应该怎么做才能对抗这种不断加剧的恶意软件浪潮呢?

如何保护您的Linux操作系统

1、更新,更新,更新

不幸的现实是源码库 ,我们的环境中充斥着严重过时的Linux系统,这会导致操作系统和安装的软件中布满漏洞 。

您需要养成定期检查更新的习惯。建议您定期在Linux设备上运行更新检查  ,并在更新可用时立即应用。对于台式机来说,这是一个很好的策略 。对于服务器 ,至少每周检查一次  ,模板下载并确保在必要时可以重新启动服务器以应用这些更新。

2 、选择正确的发行版

Linux发行版的数量远超出您的想象。尽管其中一些非常小众,但大多数都是通用的。切勿将通用操作系统用作服务器。

如果您正在寻找服务器操作系统 ,请坚持使用已知实体 ,例如Ubuntu Server 、Debian Server 、RHEL、高防服务器SUSE  、Fedora Server、AlmaLinux和Rocky Linux。如果您正在寻找用于容器的操作系统 ,请考虑使用特定于容器的发行版,例如Red Hat OpenShift 。至于台式机 ,建议您坚持使用维护良好并定期发布可靠更新的发行版 ,例如Ubuntu 、Linux Mint 、Pop!_OS和Fedora。

3 、明智且负责任地部署

部署Linux时,请确保您以及您的用户和管理团队精通该操作系统 。不要仅仅假设您可以出于任何目的部署任何Linux发行版,而无需费心了解平台的细节 ,并假设一切都会正常运行 。您需要了解Linux安全性,了解哪些工具最适合该任务,并且永远不要假设您可以在不接触操作系统的情况下进行部署  。

曾几何时,您可以“set and forget”(设置好就忘记)Linux。但那个时候已经过去了。如果您想确保您的Linux部署免受恶意软件攻击 ,请及时了解并警惕漏洞。您知道的越多,您的准备工作也就越充分 。

4 、阅读日志文件

日志包含大量信息 ,Linux提供了隐喻的大量日志可供扫描。只要看看/var/log目录,您就会明白我的意思 。问题是 ,系统上有多少日志文件并不重要:如果您不阅读它们 ,它们就毫无价值 。

养成阅读日志文件的习惯 。如果您不想手动梳理这些日志 ,可以考虑使用能帮您完成任务的工具 ,例如Graylog 2、Logcheck 、Logwatch和Logstash等。

5 、部署扫描软件

多年来,我曾对在Linux上使用扫描软件的想法嗤之以鼻 。现在?我完全赞成  !我并不是说您应该立即安装防病毒扫描程序(尽管它不会造成伤害) ,但管理员肯定应该安装rootkit扫描程序并使用工具来扫描邮件服务器 。最终用户也可以从ClamAV之类的工具中受益,但它是相当手动的,因此您的最终用户必须接受培训以了解如何使用它。

6 、限制用户访问

不要让任何用户SSH(Secure Shell,安全外壳,一种网络安全协议 ,通过加密和认证机制实现安全的访问和文件传输等业务)进入您的服务器  。只允许绝对需要访问权限的人使用Secure Shell来访问您的服务器  。同时 ,设置只允许SSH密钥访问并且root用户被锁定在SSH身份验证之外的策略。

7、采用强密码策略

说到用户,您必须为Linux设置一个强密码策略 。强密码是必须的 。但是 ,如果您的服务器和台式机不需要强密码 ,您就无法实施这样的策略 。以下是借助PAM(Pluggable Authentication Modules)在Ubuntu/Debian 设备上启用强密码的分步指南

安装

虽然PAM已经安装,但您必须添加一个附加模块 。为此 ,请打开终端窗口并发出以下命令  :

复制sudo apt-get install libpam-cracklib1.

这就是要安装的全部内容。

配置libpam_cracklib

此设置的配置文件是/etc/pam.d/common-password 。在进行任何更改之前,让我们复制该文件。发出命令:

复制sudo cp /etc/pam.d/common-password /root/1.

将文件的工作副本隐藏起来,在您选择的编辑器中打开文件并查找以下行 :

复制password requisite pam_cracklib.so retry=3 minlen=8 difok=31.

我们将使用以下选项进行设置:

· minlen=建立与密码长度相关的复杂性度量 。

· lcredit=设置所需小写字母的最小数量 。

· ucredit=设置所需大写字母的最小数量。

· dcredit=设置所需的最小位数 。

· ocredit=设置所需其他字符的最小数量 。

· difok=设置必须不同于之前密码的字符数。

这是配置变得有点棘手的地方。您可能认为minlen是密码的最小长度。实际上,minlen是密码被认为成功之前必须达到的最低复杂度分数  。其工作原理是密码中的某些字符不止一次计入密码复杂性。为了创建这个分数,复杂性是通过几个步骤来衡量的:

· 密码中的每个字符都会加一分(无论类型如何) 。

· 每个小写字母加一分(最高为lcredit的值)。

· 每个大写字母加一分(最高为ucredit的值) 。

· 每个数字加一分(最高为dcredit的值)。

· 每个特殊字符加一分(最高为ocredit的值)。

您还可以将这些值设置为负数 。负数表示类的最小值(类是lcredit 、ucredit、dcredit等) ,而正值表示类的最大值。

举个例子 :

复制password requisite pam_cracklib.so try_first_pass retry=3

minlength=16lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 difok=4

reject_username1.2.3.

上述设置将确保密码的复杂度得分为16,并且每个类别中至少包含一个字符 。此外  ,还增加了reject_username ,以防止用户将其用户名设置为密码 。

8、定期进行渗透测试

您还应该养成在所有Linux系统上运行渗透测试的习惯。确实,使用Kali Linux之类的大型工具包可能会拖慢系统运行速度 ,但是当您发现系统上迄今为止未知的漏洞并修补它们时,您会发现一切都是值得的。它会帮您避免一场灾难  。

9 、不要禁用SELinux ,并使用你的防火墙

我猜,Linux管理员在基于RHEL的发行版上做的第一件事就是禁用SELinux。千万别这样做 !SELinux的存在是有原因的 。确实 ,它可能比较麻烦 ,但子系统提供的安全性是值得的 。关于SELinux有很多东西要学,但是考虑这个安全系统是绝对必须的,而且越早学习,您就可以越早利用它提升安全性。

同时 ,使用您的防火墙 。了解您选择的发行版使用的任何工具——例如UFW或FirewallD——并熟悉它的工作原理。不要禁用它  ,而是启用它 。该防火墙可能是您数据安全的最后堡垒 。 所以为什么要忽略它呢 ?

以上就是在Linux上避免恶意软件的最佳建议 。当然,这并不是万能的 ,但它可以在很大程度上防止您或您的公司遭受灾难 。

本文翻译自 :https://www.techrepublic.com/article/linux-malware-tips-securing-oss/如若转载,请注明原文地址 。

滇ICP备2023006006号-38