虽然 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 条评论