mirror of
https://github.com/LCTT/TranslateProject.git
synced 2024-12-26 21:30:55 +08:00
134 lines
7.1 KiB
Markdown
134 lines
7.1 KiB
Markdown
[#]: 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 |