为初学者保护 Linux 服务器的 6 个开源工具和技巧为初学者保护 Linux 服务器的 6 个开源工具和技巧为初学者保护 Linux 服务器的 6 个开源工具和技巧为初学者保护 Linux 服务器的 6 个开源工具和技巧
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

为初学者保护 Linux 服务器的 6 个开源工具和技巧

使用开源工具保护您的 Linux 环境免遭破坏。

由于我们现在可以在线获取大量个人和专业数据,因此对于每个人(从专业人士到普通互联网用户)来说,了解安全和隐私的基础知识非常重要。作为一名学生,我通过学校的 CyberPatriot 计划获得了该领域的经验,在那里我有机会与行业专家互动,了解网络漏洞以及建立系统安全的基本步骤。

本文根据我作为初学者迄今为止所学到的知识,详细介绍了提高个人使用的 Linux 环境安全性的六个简单步骤。在我的整个旅程中,我利用开源工具来加速我的学习过程,并熟悉与保护 Linux 服务器相关的更高层次的概念。

我已经使用我最熟悉的版本 Ubuntu 18.04 测试了这些步骤,但这些步骤也适用于其他 Linux 发行版。

1.运行更新

开发人员不断寻找通过修补已知漏洞来使服务器更加稳定、快速和安全的方法。定期运行更新是一个可以最大限度提高安全性的好习惯。运行它们:

sudo apt-get update && apt-get upgrade

2.启用防火墙保护

启用防火墙可以更轻松地控制服务器上的传入和传出流量。您可以在 Linux 上使用许多防火墙应用程序,包括firewall-cmd 和 Uncomplicated Firewall (UFW)。我使用 UFW,因此我的示例是针对它的,但这些原则适用于您选择的任何接口。

安装UFW:

sudo apt-get install ufw

如果您想进一步保护服务器的安全,您可以拒绝传入和传出连接。请注意:这会切断您的服务器与外界的联系,因此一旦您阻止了所有流量,您必须指定系统允许哪些传出连接:

sudo ufw default deny incoming
sudo ufw default allow outgoing

您还可以编写规则来允许个人使用所需的传入连接:

ufw allow <service>

例如,要允许 SSH 连接:

ufw allow ssh

最后,启用防火墙:

sudo ufw enable

3、加强密码保护

实施强密码策略是确保服务器免受网络攻击和数据泄露的重要方面。密码策略的一些最佳实践包括强制执行最小长度和指定密码期限。我使用 libpam-cracklib 包来完成这些任务。

安装 libpam-cracklib 软件包:

sudo apt-get install libpam-cracklib

强制密码长度:

  • 打开 /etc/pam.d/common-password 文件。
  • 通过将 minlen=12 行更改为您想要的字符数来更改所有密码的最小字符长度。

为防止密码重复使用:

  • 在同一文件 (/etc/pam.d/common-password) 中,添加行 remember=x。
  • 例如,如果您想防止用户重复使用最近五个密码之一,请使用:remember=5。

强制密码期限:

  • 在 /etc/login.defs 文件中找到以下行,并将其替换为您首选的时间(天)。例如:

    PASS_MIN_AGE: 3
    PASS_MAX_AGE: 90
    PASS_WARN_AGE: 14

要强制执行字符规范:

  • 在密码中强制执行字符规范的四个参数是 lcredit(小写)、ucredit(大写)、dcredit(数字)和 ocredit(其他字符)。
  • 在同一文件 (/etc/pam.d/common-password) 中,找到包含 pam_cracklib.so 的行。

    • 将以下内容添加到该行的末尾:

      lcredit=-a ucredit=-b dcredit=-c ocredit=-d
    • 例如,以下行要求密码包含每个参数的一个。您可以根据您首选的密码安全级别更改数字:

      lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1

4. 禁用容易被利用的非必要服务

最佳做法是禁用不必要的服务。这使得开放供利用的端口更少。

安装系统包:

sudo apt-get install systemd

查看哪些服务正在运行:

systemctl list-units

识别哪些服务可能会给您的系统带来潜在的漏洞。对于每项服务:

  • 如果服务当前正在运行,请停止该服务:

    systemctl stop <service>
  • 禁止该服务在启动时启动:

    systemctl disable <service>
  • 运行这些命令后,检查服务的状态:

    systemctl status <service>

5.检查监听端口

开放端口可能会带来安全风险,因此检查服务器上正在侦听的端口非常重要。我使用 netstat 命令显示所有网络连接:

netstat -tulpn

查看地址列以确定端口号。找到开放端口后,请检查它们以确保它们都是必需的。如果不是,请调整您正在运行的服务,或调整您的防火墙设置(或让fail2ban 为您调整)。

6. 扫描恶意软件

防病毒扫描软件可有效防止病毒进入您的系统。使用它们是让您的服务器免受恶意软件侵害的简单方法。我首选的工具是开源软件 ClamAV。

安装 ClamAV:

sudo apt-get install clamav

更新病毒特征码:

sudo freshclam

扫描所有文件并打印出受感染的文件,发现时敲响警钟:

sudo clamscan -r --bell -i /

您可以而且应该自动执行扫描,这样您就不必记住或花时间手动进行扫描。对于像这样的简单自动化,您可以使用 systemd 计时器或您最喜欢的 cron。

确保您的服务器安全

我们不能将保护服务器安全的责任留给单个人或组织。随着威胁形势持续迅速扩大,我们每个人都应该意识到服务器安全的重要性,并采用一些简单、有效的安全最佳实践。

这些只是您可以采取的确保 Linux 服务器安全的众多步骤中的一小部分。当然,预防只是解决方案的一部分。这些策略应与严格监控拒绝服务攻击、使用 Lynis 进行系统分析以及创建频繁备份相结合。

您使用哪些开源工具来保证服务器安全?在评论中告诉我们有关它们的信息。

©2015-2025 艾丽卡 support@alaica.com