如何在 Linux 中验证 ISO 映像

您刚刚从官方网站或第三方网站下载了您最喜欢的 Linux 发行版的 ISO 映像,现在该怎么办? 创建可启动媒体 并开始安装操作系统? 不,等等。 在开始使用它之前,强烈建议验证本地系统中下载的 ISO 是否与下载镜像中的 ISO 完全相同。 因为, Linux Mint 的网站被黑了 几年前,黑客制作了一个经过修改的 Linux Mint ISO,其中包含一个后门。 因此,检查 Linux ISO 映像的真实性和完整性非常重要。 如果您不知道如何在 Linux 中验证 ISO 映像,那么这份简短指南会有所帮助。 继续阅读!

内容

  1. 在 Linux 中验证 ISO 映像
    1. 下载校验和和签名
    2. 下载有效的签名密钥
    3. 验证 SHA-256 校验和
    4. 检查下载的 ISO 文件
    5. 帮助我们帮助您:

在 Linux 中验证 ISO 映像

我们可以使用 校验和 价值观。 校验和是一系列字母和数字,用于检查数据的错误并验证下载文件的真实性和完整性。 有不同类型的校验和,例如 SHA-0、SHA-1、SHA-2(224、256、384、512)和 MD5。 MD5 sums 是最流行的,但现在 SHA-256 sums 主要被现代 Linux 发行版使用。

我们将使用两个工具,即 “gpg”“sha256” 验证 ISO 映像的真实性和完整性。

下载校验和和签名

出于本指南的目的,我将使用 Ubuntu 18.04 LTS 服务器 ISO 映像。 但是,下面给出的步骤也应该适用于其他 Linux 发行版。

在 Ubuntu 下载页面顶部附近,您会看到一些额外的文件(校验和和签名),如下图所示。

Ubuntu 18.04 校验和和签名

在这里, SHA256SUMS 文件包含所有可用图像的校验和 SHA256SUMS.gpg file 是该文件的 GnuPG 签名。 我们使用这个签名文件来 核实 校验和文件在后续步骤中。

下载 Ubuntu ISO 映像和这两个文件,并将它们全部放在一个目录中,例如 国际标准化组织.

$ ls ISO/ SHA256SUMS SHA256SUMS.gpg ubuntu-18.04.2-live-server-amd64.iso

正如您在上面的输出中看到的,我已经下载了 Ubuntu 18.04.2 LTS 服务器映像以及校验和和签名值。

下载有效的签名密钥

现在,使用命令下载正确的签名密钥:

$ gpg --keyid-format long --keyserver hkp://keyserver.ubuntu.com --recv-keys 0x46181433FBB75451 0xD94AA3F0EFE21092

样本输出:

gpg: key D94AA3F0EFE21092: 57 signatures not checked due to missing keys gpg: key D94AA3F0EFE21092: public key "Ubuntu CD Image Automatic Signing Key (2012) <[email protected]>" imported gpg: key 46181433FBB75451: 105 signatures not checked due to missing keys gpg: key 46181433FBB75451: public key "Ubuntu CD Image Automatic Signing Key <[email protected]>" imported gpg: no ultimately trusted keys found gpg: Total number processed: 2 gpg: imported: 2

验证 SHA-256 校验和

接下来使用带有命令的签名验证校验和文件:

$ gpg --keyid-format long --verify SHA256SUMS.gpg SHA256SUMS

样本输出:

gpg: Signature made Friday 15 February 2019 04:23:33 AM IST gpg: using DSA key 46181433FBB75451 gpg: Good signature from "Ubuntu CD Image Automatic Signing Key <[email protected]>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: C598 6B4F 1257 FFA8 6632 CBA7 4618 1433 FBB7 5451 gpg: Signature made Friday 15 February 2019 04:23:33 AM IST gpg: using RSA key D94AA3F0EFE21092 gpg: Good signature from "Ubuntu CD Image Automatic Signing Key (2012) <[email protected]>" [unknown] gpg: WARNING: This key is not certified with a trusted signature! gpg: There is no indication that the signature belongs to the owner. Primary key fingerprint: 8439 38DF 228D 22F7 B374 2BC0 D94A A3F0 EFE2 1092

如果您在输出中看到“Good signature”,则校验和文件由 Ubuntu 开发人员创建并由密钥文件的所有者签名。

检查下载的 ISO 文件

接下来,让我们继续检查下载的 ISO 文件是否与校验和匹配。 为此,只需运行:

$ sha256sum -c SHA256SUMS 2>&1 | grep OK ubuntu-18.04.2-live-server-amd64.iso: OK

如果校验和值匹配,您将看到 “行” 信息。 含义 – 下载的文件是合法的,没有更改或篡改。

如果您没有得到任何输出或与上述输出不同,则 ISO 文件已被修改或下载错误。 您必须从一个好的来源重新下载该文件。

一些 Linux 发行版在下载页面本身中包含校验和值。 例如, 流行!_os 开发人员已在下载页面本身提供了所有 ISO 映像的 SHA-256 校验和值,因此您可以快速验证 ISO 映像。