使用 Tripwire 保护 Linux 文件系统

Linux 完整性检查器会在恶意软件或其他事件更改您的文件系统时通知您。
359 位读者喜欢这个。
4 manilla folders, yellow, green, purple, blue

Open Clip Art Library (公共领域)。由 Jen Wike Huger 修改。

虽然 Linux 被认为是最安全的操作系统(优于 Windows 和 MacOS),但它仍然容易受到 rootkit 和其他恶意软件变种的攻击。因此,Linux 用户需要知道如何保护他们的服务器或个人计算机免受破坏,他们需要采取的第一步是保护文件系统。

在本文中,我们将介绍 Tripwire,这是一个用于保护 Linux 文件系统的出色工具。Tripwire 是一种完整性检查工具,使系统管理员、安全工程师和其他人员能够检测系统文件的更改。虽然它不是唯一的选择(AIDE 和 Samhain 提供了类似的功能),但 Tripwire 是 Linux 系统文件的流行完整性检查器,并且在 GPLv2 下以开源形式提供。

Tripwire 的工作原理

了解 Tripwire 的工作原理有助于理解它在安装后所做的事情。Tripwire 由两个主要组件组成:策略和数据库。策略列出了完整性检查器应拍摄快照的所有文件和目录,此外还创建了用于识别目录和文件更改违规的规则。数据库由 Tripwire 拍摄的快照组成。

Tripwire 还有一个配置文件,用于指定数据库、策略文件和 Tripwire 可执行文件的位置。它还提供了两个加密密钥——站点密钥和本地密钥——以保护重要文件免遭篡改。站点密钥保护策略和配置文件,而本地密钥保护数据库和生成的报告。

Tripwire 的工作原理是定期将目录和文件与数据库中的快照进行比较,并报告任何更改。

安装 Tripwire

为了使用 Tripwire,我们需要先下载并安装它。Tripwire 几乎可以在所有 Linux 发行版上运行;您可以从 Sourceforge 下载开源版本,并根据您的 Linux 版本按如下方式安装它。

Debian 和 Ubuntu 用户可以直接从仓库使用 apt-get 安装 Tripwire。非 root 用户应键入 sudo 命令以通过 apt-get 安装 Tripwire。

sudo apt-get update 
sudo  apt-get install tripwire  

CentOS 和其他基于 rpm 的发行版使用类似的过程。为了最佳实践,在安装 Tripwire 等新软件包之前更新您的仓库。命令 yum install epel-release 仅仅意味着我们想要安装额外的仓库。(epel 代表 Enterprise Linux 的额外软件包。)

yum update 
yum install epel-release 
yum install tripwire  

此命令使安装运行 Tripwire 有效运行所需的软件包配置。此外,它会询问您是否要在安装期间选择密码短语。您可以对两个提示都选择“是”。

此外,如果需要构建配置文件,请选择或选择“是”。为站点密钥和本地密钥选择并确认密码短语。(建议使用复杂的密码短语,例如 Il0ve0pens0urce。)

构建并初始化 Tripwire 的数据库

接下来,按如下方式初始化 Tripwire 数据库

tripwire –-init 

您需要提供您的本地密钥密码短语才能运行这些命令。

使用 Tripwire 进行基本完整性检查

您可以使用以下命令指示 Tripwire 检查您的文件或目录是否已被修改。Tripwire 将文件和目录与数据库中的初始快照进行比较的能力基于您在活动策略中创建的规则。

tripwire  --check   

您还可以将 –check 命令限制为特定文件或目录,例如在本例中

tripwire   –-check   /usr/tmp  

此外,如果您需要有关使用 Tripwire 的 –check 命令的扩展帮助,此命令允许您查阅 Tripwire 的手册

tripwire  --check  --help  

使用 Tripwire 生成报告

要轻松生成每日系统完整性报告,请使用以下命令创建 crontab

crontab -e 

之后,您可以编辑此文件(使用您选择的文本编辑器)以引入要由 cron 运行的任务。例如,您可以使用以下命令设置 cron 任务,以每天凌晨 5:40 将 Tripwire 报告发送到您的电子邮件

40 5  *  *  *  usr/sbin/tripwire   --check

无论您决定使用 Tripwire 还是具有类似功能的其他完整性检查器,关键问题是确保您有一个解决方案来保护 Linux 文件系统的安全。

标签

4 条评论

在基于 Debian 的系统上,我们在安装 tripwire 时会收到有关明文密码的警告。如果不想在安装过程中冒暴露风险,如何在安装后生成密钥?谢谢。

好的!可以在安装后生成密钥,但这是一个手动过程,而且也很复杂。我建议您将明文密码存储在某个地方并对其进行加密。我更喜欢并使用这种方法,而不是下面的方法。

要手动生成密钥,请使用以下命令
生成站点密钥
twadmin --generate-keys --site-keyfile $SITE_KEY
生成本地密钥
twadmin --generate-keys --local-keyfile $LOCAL_KEY

请告诉我一切是否顺利。但请记住为 site.key 和 local.key 创建变量。谢谢!

回复 作者 James K (未验证)

可能值得指出的是,tripwire 需要 root 权限才能运行...

Creative Commons License本作品根据知识共享署名-相同方式共享 4.0 国际许可协议获得许可。
© . All rights reserved.