在哪里可以找到 Ubuntu 所有软件包中所有文件的已验证校验和?

在哪里可以找到 Ubuntu 所有软件包中所有文件的已验证校验和?

我想验证由 Ubuntu 16.04.2 LTS 下的 Aptitude 包管理器安装的二进制文件是否完好无损或已被修改/破坏。我找不到每个包(即通过更新安装在我系统上的当前包)中每个文件的文件校验和列表,因此无法进行比较。

是否有类似的内置功能?肯定有一个校验和列表,以便包管理器可以验证所有东西是否正确安装,对吗?

并且 - 在您说使用 Tripwire 或类似工具来监控这些更改之前 - tripwire 仅在您在 100% 干净的合法安装上安装并在软件包升级后立即更新总和时才有用。否则,您只是记录(并因此“验证”/“确认”)可能受到损害的二进制文件的文件哈希值。我没有记录干净安装的校验和。

但是,如果我可以运行系统上的二进制文件、共享库和默认配置等,并确认它们都是合法的,那么我就可以安装和维护 Tripwire 了。

先感谢您!

答案1

系统上有一个包含 md5sums 的文件,可用于位置 中的大多数软件包/var/lib/dpkg/info/{packagename}.md5sums。如果您安装软件包debsums,它将包含一个工具,可以运行扫描并告诉您与总和不匹配的文件。(debsums --changed

请记住,由于这些金额存储在您的本地系统中,因此很容易被盗用或替换。此工具实际上并非设计为安全控制。

如果您真的想要确定,您可以用虚拟机或其他设备中的相同软件包选择重建另一个相同的系统,然后将现有系统上的所有校验和文件与干净系统进行比较。

相关内容