Es gibt zwei Schritte, um die Authentizität von heruntergeladenen Debian-ISO-Images von Debian-Spiegelservern zu überprüfen:
- Zunächst müssen wir die Prüfsumme des CD-Image-Inhalts mit den relevanten Prüfsummendateien vergleichen, ob es sich um
MD5SUMS
handeln würde oderSHA512SUMS
- Zweitens müssen wir die eigentlichen Prüfsummendateien auf eine korrekte Signatur überprüfen, indem wir begleitende Signaturen wie
MD5SUMS.sign
verwenden oderSHA512SUMS.sign
Laden Sie zunächst alle relevanten Dateien einschließlich der gewünschten ISO-Images in einem einzigen Verzeichnis herunter. In diesem Fall validieren wir die Authentizität des debian net install CD-Images:
$ ls MD5SUMS MD5SUMS.sign SHA512SUMS SHA512SUMS.sign debian-8.0.0-arm64-netinst.iso
Die vorliegende Aufgabe besteht darin, die Authentizität des mitgelieferten Net-Install-CD-Images debian-8.0.0-arm64-netinst.iso
zu überprüfen
CD-Image-Inhalt überprüfen
Um den CD-Image-Inhalt gegen Manipulationen zu verifizieren, generieren wir lokal eine Prüfsumme und gleichen sie mit der von MD5SUMS
bereitgestellten Prüfsumme ab und SHA512SUMS
vom Debian-Mirror heruntergeladen. Beachten Sie, nur der Vollständigkeit halber verwenden wir beide Methoden MD5SUMS
und SHA512SUMS
.
MD5SUM $ md5sum -c MD5SUMS 2> /dev/null | grep netinst debian-8.0.0-arm64-netinst.iso: OK SHA512SUMS $ sha512sum -c SHA512SUMS 2> /dev/null | grep netinst debian-8.0.0-arm64-netinst.iso: OK
Auf korrekte Signatur prüfen
Bisher sieht alles super aus. Als nächstes müssen wir die Authentizität des tatsächlichen MD5SUMS
überprüfen und SHA512SUMS
Prüfsummendateien, die wir verwendet haben, um den Inhalt unseres Debian-ISO-Images zu überprüfen. Dafür verwenden wir gpg
( GNU Privacy Guard )-Befehl. Zuerst müssen wir den öffentlichen Schlüssel der Person erhalten, die unsere Prüfsummendateien signiert hat:
$ gpg --verify MD5SUMS.sign gpg: assuming signed data in `MD5SUMS' gpg: Signature made Sat Apr 25 23:44:18 2015 UTC using RSA key ID 6294BE9B gpg: Can't check signature: public key not found $ gpg --verify SHA512SUMS.sign gpg: assuming signed data in `SHA512SUMS' gpg: Signature made Sat Apr 25 23:44:18 2015 UTC using RSA key ID 6294BE9B gpg: Can't check signature: public key not found
Der öffentliche Schlüssel mit der ID6294BE9B
ist derzeit auf unserem System nicht verfügbar, daher müssen wir es zuerst direkt vom Debian-Schlüsselbundserver herunterladen:
$ gpg --keyserver keyring.debian.org --recv 6294BE9B gpg: keyring `/root/.gnupg/secring.gpg' created gpg: requesting key 6294BE9B from hkp server keyring.debian.org gpg: /root/.gnupg/trustdb.gpg: trustdb created gpg: key 6294BE9B: public key "Debian CD signing key" imported gpg: no ultimately trusted keys found gpg: Total number processed: 1 gpg: imported: 1 (RSA: 1)
An dieser Stelle sind wir in der Lage, eine Signatur für beide Prüfsummendateien zu überprüfen:
$ gpg --verify MD5SUMS.sign MD5SUMS gpg: Signature made Sat Apr 25 23:44:18 2015 UTC using RSA key ID 6294BE9B gpg: Good signature from "Debian CD signing key" 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 $ gpg --verify SHA512SUMS.sign SHA512SUMS gpg: Signature made Sat Apr 25 23:44:18 2015 UTC using RSA key ID 6294BE9B gpg: Good signature from "Debian CD signing key " 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
Die Meldung gpg: Good signature from "Debian CD signing key
bestätigt, dass das Debian-CD-Image dem gehört, dem es zu gehören behauptet. Als Schlussfolgerung versuchen wir einen einfachen Manipulationstest mit MD5SUMS
Datei und ändern Sie ein einzelnes Zeichen in dieser Datei mit vim
Herausgeber:
$ vi MD5SUMS $ gpg --verify MD5SUMS.sign MD5SUMS gpg: Signature made Sat Apr 25 23:44:18 2015 UTC using RSA key ID 6294BE9B gpg: BAD signature from "Debian CD signing key"