7.1 KiB
在 Linux 中验证 ISO 文件的初学者指南
这篇简单指南演示了在 Ubuntu 和其他 Linux 发行版中验证 ISO 文件过程。
从互联网下载操作系统镜像文件或软件有时会带来安全风险,因为恶意行为者可能会损坏或修改文件。为保证下载文件的真实性和完整性,需要对其进行校验。在本初学者指南中,我们将引导你在 Linux 中验证 ISO 文件。
什么是 ISO 文件?
ISO 文件通常用于创建可启动媒体、安装软件和创建备份。ISO 文件包含压缩格式的所有原始应用/光盘数据,可以轻松下载并通过互联网共享。
例如,如果你下载 Ubuntu 桌面、服务器或任何其他 Linux 操作系统,你一定遇到过扩展名为 .iso 的文件。它还用于应用或其他操作系统,例如 Windows。
为什么要验证 ISO 文件?
验证 ISO 文件对于确保下载的文件真实且未被修改至关重要。修改后的 ISO 文件可能包含可能损害你系统的恶意软件或病毒。验证 ISO 文件可确保下载的文件与开发人员创建的文件相同且未被篡改。
例如,几年前 Linux Mint 服务器被黑 并且官方 ISO 文件被修改。由于你是从官方网站下载的,你可能会认为这些文件是真实的,但它们不一定是。
因此,在使用 ISO 文件安装到你的笔记本电脑/台式机之前,始终验证 ISO 文件非常重要。
在 Linux 中验证 ISO 文件的方法
Linux 中校验 ISO 文件的常用方法有两种:
- 使用 SHA-256 校验和
- 使用 GPG 签名
使用 SHA-256 校验和
SHA-256 是一种加密哈希函数,可为文件生成唯一的哈希值。校验和是将 SHA-256 算法应用于文件的结果。校验和是一个唯一的字符串,可用于验证文件的完整性。
要使用 SHA-256 校验和验证 ISO 文件,请从开发者网站下载 SHA-256 校验和。SHA-256 校验和文件将包含 ISO 文件的校验和值。你需要生成下载的 ISO 文件的校验和值,并将其与 SHA-256 校验和文件中的校验和值进行比较。如果两个值匹配,则下载的 ISO 文件是真实的且未被修改。
使用 GPG 签名
GPG(GNU Privacy Guard)是一种加密软件,可用于对文件进行签名和验证。GPG 签名是一种数字签名,可确保文件的真实性和完整性。开发者使用他们的私钥签署 ISO 文件,用户使用开发者的公钥验证签名。
要使用 GPG 签名验证 ISO 文件,你需要从开发者网站下载 GPG 签名文件。GPG 签名文件将包含开发者的公钥和 ISO 文件的签名。你需要导入开发者公钥,下载 ISO 文件和 GPG 签名文件,并使用开发者公钥对 ISO 文件进行签名验证。如果签名有效,则 ISO 文件是真实的并且未被修改。
如何在 Linux 中验证 ISO 文件:示例
让我们看一下上述在 Linux 中使用 SHA-256 校验和及 GPG 签名验证 ISO 文件的方法的一些示例。
使用 SHA-256 校验和验证 ISO 文件
- 我已经从 官方网站 下载了 Linux Mint 21.1 ISO 文件。
- 此外,我还下载了包含 ISO 文件校验和的 SHA-256 文本文件(见上图)。
- 现在,打开终端并转到 ISO 和 SHA-256 校验和文件所在的目录。
- 在终端中使用
sha256sum
命令生成 ISO 文件的 SHA-256 校验和值。例如,要生成上述名为 linuxmint-21.1-cinnamon-64bit.iso 的 ISO 文件的校验和值,请运行以下命令:
sha256sum linuxmint-21.1-cinnamon-64bit.iso
- 将生成的校验和值与 SHA-256 校验和文件中的校验和值进行比较。如果两个值匹配,则 ISO 文件是真实的并且未被修改。
- 这是上述 ISO 文件的并排比较。
如果校验和匹配,你可以确信该文件是真实的并且没有被篡改。你可以对任何其他 ISO 文件和校验和使用相同的命令进行验证。
现在,让我们看看如何使用 GPG 密钥进行验证。
使用 GPG 签名验证 ISO 文件
对于上面的示例,我已经从官方网站下载了 .gpg 文件和 ISO 文件。
下一步是下载并导入开发者的公钥。你可以从开发者的网站或密钥服务器下载公钥。
我使用下面的命令为这个例子下载了 Linux Mint 的公钥。因此,对于相应 Linux 发行版文件的 ISO 文件,请查看下载页面以找出公钥。
gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-key "27DE B156 44C6 B3CF 3BD7 D291 300F 846B A25B AE09"
注意:你还可以下载公钥 .asc
文件(如果有),然后使用命令 gpg --import developer_key_file.asc
将其导入你的系统。
完成后,运行下面的 gpg 命令来验证文件。
gpg --verify sha256sum.txt.gpg sha256sum.txt
如果文件是真实的,你应该会在上述命令的输出中看到 “Good signature” 消息。此外,你可以匹配公钥的最后 8 个字节。“Warning” 是一条通用消息,你可以忽略它。
总结
验证 ISO 文件是确保下载文件的真实性和完整性的重要步骤。在本初学者指南中,我介绍了在 Linux 中使用 SHA-256 校验和和 GPG 签名验证 ISO 文件的方法和步骤。通过执行这些步骤,你可以自信地下载和使用 ISO 文件,知道它们没有被修改并且可以安全使用。
请记住,即使你是从官方网站下载的,在你验证之前你永远不会知道 ISO 文件是否真实。因此,请将此作为最佳实践。
(题图:MJ/iso cd image illustration in high resolution, very detailed, 8k)
via: https://www.debugpoint.com/verify-iso-files-linux/