如何验证 Debian ISO 完整性?

use*_*031 10 debian checksum integrity

我最近下载了 Debian 7.5.0 Wheezy 并设法使用 Release.sig 签名来验证使用 GPG4Win 的 Release 校验和文件的完整性。不幸的是,我找不到关于在哪里可以找到 Release 文件中的 md5/SHA1/SHA256 校验和以验证 ISO 是否正确/没有被损坏/操纵的任何建议。在支持站点上也找不到有关此特定问题的任何帮助。如果相关,我正在使用 Windows 7。

编辑:我的 ISO 文件的名称是“debian-7.5.0-amd64-netinst”。其他版本可以在这里找到(ftp://cdimage.debian.org/cdimage/release/7.5.0-live/amd64/iso-hybrid/)并提供一种更简单的方法来验证完整性,因为这个文件:ftp: //cdimage.debian.org/cdimage/release/7.5.0-live/amd64/iso-hybrid/SHA256SUMS . 我需要在我验证的发布文件中找到类似的东西。

z0r*_*z0r 7

您需要验证散列是否与下载的图像匹配,然后验证散列是否由官方 Debian 密钥签名 - 如本博文中所述。

  1. 下载您的 CD 映像、SHA 512 哈希和哈希签名。您从哪里获得它们并不重要,因为我们将在下面验证签名。但是您可以从debian.org获得它。
  2. 验证散列是否与图像匹配(这些命令都不应打印任何内容):

    $ sha512sum debian-8.3.0-amd64-i386-netinst.iso > my_hash.txt
    $ diff -q my_hash.txt SHA512SUMS.txt
    
    Run Code Online (Sandbox Code Playgroud)
  3. 验证哈希是否正确签名。您可能需要执行两次:一次是为了获取密钥 ID,另一次是在您下载了公钥之后。命令输出应如下所示:

    $ gpg --verify SHA512SUMS.sign.txt SHA512SUMS.txt
    gpg: Signature made Mon 25 Jan 2016 05:08:46 AEDT using RSA key ID 6294BE9B
    gpg: Can't check signature: public key not found
    $ gpg --keyserver keyring.debian.org --recv 6294BE9B
    gpg: requesting key 6294BE9B from hkp server keyring.debian.org
    gpg: key 6294BE9B: public key "Debian CD signing key <debian-cd@lists.debian.org>" imported
    gpg: no ultimately trusted keys found
    gpg: Total number processed: 1
    gpg:               imported: 1  (RSA: 1)
    $ gpg --verify SHA512SUMS.sign.txt SHA512SUMS.txt
    gpg: Signature made Mon 25 Jan 2016 05:08:46 AEDT using RSA key ID 6294BE9B
    gpg: Good signature from "Debian CD signing key <debian-cd@lists.debian.org>"
    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: DF9B 9C49 EAA9 2984 3258  9D76 DA87 E80D 6294 BE9B
    
    Run Code Online (Sandbox Code Playgroud)
  4. 验证密钥指纹(最后打印的行)是否合法。理想情况下,您应该通过信任网络来做到这一点。但是,您可以根据Debian 安全网站(HTTPS)上列出的密钥检查密钥指纹。

  • 很有帮助。恭敬地建议您在当前步骤 1 和 2 之间添加一个步骤,读取如下内容:**“从 SHA 512 哈希复制相关行(如果所述文件有多于一行)并将其粘贴到新的文本文件中,名为 SHA512SUMS.txt。"** 接下来,在“$ gpg --verify SHA512SUMS.sign.txt SHA512SUMS.txt”步骤中,建议您更改对“SHA512SUMS.txt”文件的引用,使其引用最初下载的文件,未更改的哈希文件(包含所有原始数据的文件)。说建议的改变会阻止我掉进又深又黑的兔子洞...... (2认同)