[#]: subject: "Beginner’s Guide to Verify ISO Files in Linux" [#]: via: "https://www.debugpoint.com/verify-iso-files-linux/" [#]: author: "Arindam https://www.debugpoint.com/author/admin1/" [#]: collector: "lkxed" [#]: translator: "geekpi" [#]: reviewer: "wxy" [#]: publisher: "wxy" [#]: url: "https://linux.cn/article-15755-1.html" 在 Linux 中验证 ISO 文件的初学者指南 ====== ![][0] > 这篇简单指南演示了在 Ubuntu 和其他 Linux 发行版中验证 ISO 文件过程。 从互联网下载操作系统镜像文件或软件有时会带来安全风险,因为恶意行为者可能会损坏或修改文件。为保证下载文件的真实性和完整性,需要对其进行校验。在本初学者指南中,我们将引导你在 Linux 中验证 ISO 文件。 ### 什么是 ISO 文件? ISO 文件通常用于创建可启动媒体、安装软件和创建备份。ISO 文件包含压缩格式的所有原始应用/光盘数据,可以轻松下载并通过互联网共享。 例如,如果你下载 Ubuntu 桌面、服务器或任何其他 Linux 操作系统,你一定遇到过扩展名为 .iso 的文件。它还用于应用或其他操作系统,例如 Windows。 ### 为什么要验证 ISO 文件? 验证 ISO 文件对于确保下载的文件真实且未被修改至关重要。修改后的 ISO 文件可能包含可能损害你系统的恶意软件或病毒。验证 ISO 文件可确保下载的文件与开发人员创建的文件相同且未被篡改。 例如,几年前 [Linux Mint 服务器被黑][1] 并且官方 ISO 文件被修改。由于你是从官方网站下载的,你可能会认为这些文件是真实的,但它们不一定是。 因此,在使用 ISO 文件安装到你的笔记本电脑/台式机之前,始终验证 ISO 文件非常重要。 ### 在 Linux 中验证 ISO 文件的方法 Linux 中校验 ISO 文件的常用方法有两种: - 使用 SHA-256 校验和 - 使用 GPG 签名 #### 使用 SHA-256 校验和 [SHA-256][2] 是一种加密哈希函数,可为文件生成唯一的哈希值。校验和是将 SHA-256 算法应用于文件的结果。校验和是一个唯一的字符串,可用于验证文件的完整性。 要使用 SHA-256 校验和验证 ISO 文件,请从开发者网站下载 SHA-256 校验和。SHA-256 校验和文件将包含 ISO 文件的校验和值。你需要生成下载的 ISO 文件的校验和值,并将其与 SHA-256 校验和文件中的校验和值进行比较。如果两个值匹配,则下载的 ISO 文件是真实的且未被修改。 #### 使用 GPG 签名 [GPG][3](GNU Privacy Guard)是一种加密软件,可用于对文件进行签名和验证。GPG 签名是一种数字签名,可确保文件的真实性和完整性。开发者使用他们的私钥签署 ISO 文件,用户使用开发者的公钥验证签名。 要使用 GPG 签名验证 ISO 文件,你需要从开发者网站下载 GPG 签名文件。GPG 签名文件将包含开发者的公钥和 ISO 文件的签名。你需要导入开发者公钥,下载 ISO 文件和 GPG 签名文件,并使用开发者公钥对 ISO 文件进行签名验证。如果签名有效,则 ISO 文件是真实的并且未被修改。 ### 如何在 Linux 中验证 ISO 文件:示例 让我们看一下上述在 Linux 中使用 SHA-256 校验和及 GPG 签名验证 ISO 文件的方法的一些示例。 #### 使用 SHA-256 校验和验证 ISO 文件 ![示例 - 要验证和校验和的 ISO 文件][4] - 我已经从 [官方网站][5] 下载了 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 文件的并排比较。 ![使用 sha256sum 命令验证 ISO 文件][6] 如果校验和匹配,你可以确信该文件是真实的并且没有被篡改。你可以对任何其他 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 ``` ![使用 gpg 密钥验证 ISO 文件][7] 如果文件是真实的,你应该会在上述命令的输出中看到 “Good signature” 消息。此外,你可以匹配公钥的最后 8 个字节。“Warning” 是一条通用消息,你可以忽略它。 ### 总结 验证 ISO 文件是确保下载文件的真实性和完整性的重要步骤。在本初学者指南中,我介绍了在 Linux 中使用 SHA-256 校验和和 GPG 签名验证 ISO 文件的方法和步骤。通过执行这些步骤,你可以自信地下载和使用 ISO 文件,知道它们没有被修改并且可以安全使用。 请记住,即使你是从官方网站下载的,在你验证之前你永远不会知道 ISO 文件是否真实。因此,请将此作为最佳实践。 > **[参考信息][8]** *(题图:MJ/iso cd image illustration in high resolution, very detailed, 8k)* -------------------------------------------------------------------------------- via: https://www.debugpoint.com/verify-iso-files-linux/ 作者:[Arindam][a] 选题:[lkxed][b] 译者:[geekpi](https://github.com/geekpi) 校对:[wxy](https://github.com/wxy) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出 [a]: https://www.debugpoint.com/author/admin1/ [b]: https://github.com/lkxed/ [1]: https://blog.linuxmint.com/?p=2994 [2]: https://en.wikipedia.org/wiki/SHA-2 [3]: https://gnupg.org/ [4]: https://www.debugpoint.com/wp-content/uploads/2023/04/Example-ISO-files-to-verify-and-checksum.jpg [5]: https://linuxmint.com/edition.php?id=302 [6]: https://www.debugpoint.com/wp-content/uploads/2023/04/Verify-ISO-file-using-sha256-command.jpg [7]: https://www.debugpoint.com/wp-content/uploads/2023/04/Verifying-ISO-file-using-gpg-keys.jpg [8]: https://linuxmint-installation-guide.readthedocs.io/en/latest/verify.html [0]: https://img.linux.net.cn/data/attachment/album/202304/25/212733t57u5suu75t58gl5.jpg