Ubuntu 26.04 / Herunterladen und Überprüfen einer ISO mit Prüfsummen und GPG
Laden Sie ein Ubuntu 26.04 ISO über einen offiziellen Vertriebsweg herunter und überprüfen Sie es dann mit SHA256SUMS und SHA256SUMS.gpg von derselben Veröffentlichungsquelle. Eine digitale Signatur überprüft den Unterzeichner der Prüfsummenliste, während ein SHA-256-Vergleich sicherstellt, dass das heruntergeladene ISO mit dieser Liste übereinstimmt; führen Sie beide Überprüfungen als separate Schritte aus.
Bereiten Sie das ISO, die Prüfsummenliste und die Signatur vor
Ein ISO ist ein Datenträgerabbild, das Installationsmedien enthält. In einer herkömmlichen VM wird es an ein virtuelles optisches Laufwerk angeschlossen. Die Erstellung bootfähiger USB-Installationsmedien für einen physischen PC erfordert einen separaten Schreibvorgang für das Abbild: Das einfache Herunterladen des ISO macht ein USB-Laufwerk nicht bootfähig.
Wählen Sie 26.04 LTS und die Architektur über die Ubuntu Server-Downloadseite. Das amd64-Beispiel ist ubuntu-26.04.1-live-server-amd64.iso. Für eine andere Architektur oder Punktversion verwenden Sie den tatsächlichen Dateinamen und die Überprüfungsdateien aus seinem Verzeichnis.
- Erstellen Sie einen Arbeitsordner, z. B.
ubuntu-26.04-verifyim Downloads-Ordner, und speichern Sie Ihre gewählte ISO dort. - Laden Sie
SHA256SUMSundSHA256SUMS.gpgaus dem offiziellen Verzeichnis, das diese ISO enthält, herunter und legen Sie sie im selben Ordner ab. Das amd64-Beispiel befindet sich im offiziellen 26.04-Release-Verzeichnis. - Zeigen Sie Dateierweiterungen an, wenn sie verborgen sind. Überprüfen Sie, dass die Prüfsummendatei nicht als
SHA256SUMS.txtoder als HTML-Seite gespeichert wurde und dass das ISO keine teilweise heruntergeladene Datei mehr ist.
Dateien, die auf .torrent oder .zsync enden, helfen beim Herunterladen; sie sind nicht das ISO. Prüfsummen von einer anderen Version oder einem anderen Image-Verzeichnis können ein vollkommen intaktes 26.04.1 ISO ablehnen, da die Dateien nicht übereinstimmen. Wenn man die drei Dateien zusammen aufbewahrt, vereinfacht das den Arbeitsablauf, aber man muss trotzdem bestätigen, dass sie zusammengehören.
Bewahren Sie die heruntergeladenen Bytes der Prüfsummenliste und der Signatur bei. Das Speichern über einen Texteditor kann Zeilenenden oder Kodierung ändern und die Signaturprüfung zerstören. Eine Datei lesen und eine bearbeitete Kopie speichern sind unterschiedliche Vorgänge.
Verstehen von Hashes und digitalen Signaturen
SHA-256 berechnet einen Hash fester Länge aus den Byte-Inhalten einer Datei. Das Abgleichen des tatsächlichen Hashes eines ISO mit einem vertrauenswürdigen erwarteten Wert überprüft, ob die Inhalte übereinstimmen. Ein reiner Hash-Vergleich kann die Authentizität nicht bestätigen, wenn ein Angreifer sowohl das ISO als auch die Prüfsummenliste ersetzt hat.
SHA256SUMS.gpg ist eine abgetrennte Signatur über die Prüfsummenliste. Verwenden Sie den Befehl gpg von GnuPG, um sie zu überprüfen, vergleichen Sie den vollständigen Fingerabdruck des öffentlichen Schlüssels mit den offiziellen Anweisungen von Ubuntu und vergleichen Sie dann die ISO-Prüfsumme. Die Identifizierung des Unterzeichners und die Überprüfung des Dateiinhalts dienen unterschiedlichen Zwecken. Ziehen Sie nicht den Schluss, dass eine Datei offiziell ist, nur weil ihr Hash mit einer nicht verifizierten Liste übereinstimmt. Siehe Das Ubuntu-Download-Verifizierungs-Tutorial für das zugrunde liegende Verfahren.
Bereiten Sie GnuPG und ein separates Verzeichnis für öffentliche Schlüssel vor
Die Signaturüberprüfung erfordert GnuPG. Auf einem bereits vertrauenswürdigen Ubuntu-System überprüfen Sie es mit command -v gpg; falls es fehlt, installieren Sie es aus den offiziellen Repositories mit sudo apt install gnupg. Unter Windows verwenden Sie eine vertrauenswürdige GnuPG-Distribution wie das offizielle Gpg4win-Paket und bestätigen Sie dann, dass gpg --version in einem neuen Terminal funktioniert. Vermeiden Sie nicht verwandte ausführbare Downloads aus Suchergebnissen.
Führen Sie die folgenden GPG-Befehle aus, wobei der Arbeitsordner das aktuelle Verzeichnis Ihres Terminals ist. Sowohl Windows PowerShell als auch eine Linux-Shell können das externe Programm gpg aufrufen, sobald es installiert und verfügbar ist. Erstellen Sie zunächst ein leeres Verzeichnis mit dem Namen ubuntu-verify-keys im Arbeitsordner. Unter Linux verwenden Sie mkdir -m 700 ubuntu-verify-keys; unter Windows können Sie die Aktion 'Neuer Ordner' im Datei-Explorer verwenden. Wenn dieses Verzeichnis bereits existiert, wählen Sie einen neuen Namen und passen Sie alle Befehle entsprechend an.
Ein separates Schlüsselverzeichnis hält diese Überprüfungsaufgabe von Ihrem üblichen öffentlichen Schlüsselbestand getrennt. Legen Sie keine privaten Schlüssel oder Anmeldepasswörter darin ab. Der Fingerabdruck unten identifiziert den Ubuntu-CD-Image-automatischen Signaturschlüssel (2012). Vergleichen Sie den vollständigen Fingerabdruck mit den offiziellen Anweisungen von Ubuntu, anstatt einem übereinstimmenden Anzeigenamen oder einer kurzen Schlüssel-ID zu vertrauen.
gpg --homedir ./ubuntu-verify-keys --keyserver hkps://keyserver.ubuntu.com --recv-keys 843938DF228D22F7B3742BC0D94AA3F0EFE21092
gpg --homedir ./ubuntu-verify-keys --fingerprint 843938DF228D22F7B3742BC0D94AA3F0EFE21092
Vergleichen Sie alle 40 hexadezimalen Zeichen mit dem offiziellen Fingerabdruck. Die unten stehenden Leerzeichen dienen nur der Lesbarkeit.
8439 38DF 228D 22F7 B374 2BC0 D94A A3F0 EFE2 1092
Ein Schlüsselserver stellt öffentliche Schlüssel bereit; der Empfang eines Schlüssels von ihm bestätigt nicht automatisch die Identität des Besitzers. Wenn sich der signierende Schlüssel ändert oder eine andere Schlüsseldatei die Datei signiert hat, überprüfen Sie Ubuntus aktuelle offizielle Verifikationsanweisungen erneut. Importieren Sie nicht einfach die ID, die in einer Fehlermeldung erscheint, um die Überprüfung bestehen zu lassen.
Überprüfen Sie die Signatur der Prüfsummenliste
gpg --homedir ./ubuntu-verify-keys --keyid-format long --verify SHA256SUMS.gpg SHA256SUMS
Das erste Argument ist die externe Signatur; das zweite ist die Prüfsummenliste, die signiert wurde. Suchen Sie nach Good signature und überprüfen Sie die Details des Unterzeichners sowie den Fingerabdruck. Überprüfen Sie außerdem sofort den Beendigungsstatus: Führen Sie printf 'exit=%s\n' "$?" in einer Linux-Shell oder $LASTEXITCODE in PowerShell aus und prüfen Sie, ob er 0 ergibt. Die Ausgabesprache und die Signaturdaten können unterschiedlich sein.
Ein separater Schlüsselbund kann eine Warnung wie This key is not certified with a trusted signature erzeugen. Dies unterscheidet sich von BAD signature, das einen Fehler der kryptografischen Signatur meldet. Ignorieren Sie die Vertrauensfrage nicht: Stellen Sie sicher, dass der vollständige Fingerabdruck mit den offiziellen Ubuntu-Anweisungen übereinstimmt. Die Dokumentation zum GnuPG-Verify-Befehl erklärt, wie beide Dateien für die getrennte Überprüfung angegeben werden.
Für No public key überprüfen Sie, ob der erforderliche Schlüssel in dasselbe Verzeichnis importiert wurde, das von --homedir angegeben ist. Für BAD signature prüfen Sie die Zuordnung der Liste und der Signatur und ob versehentlich eine HTML-Seite gespeichert wurde, und laden Sie dann beide Dateien erneut von der offiziellen Quelle herunter. Behandeln Sie die Überprüfung gegen die Liste nicht als abgeschlossen, solange die Signaturüberprüfung ungelöst bleibt.
Vergleichen Sie den ISO-Hash in Windows PowerShell
Öffnen Sie im Datei-Explorer den Ordner, der die ISO- und Verifizierungsdateien enthält, und öffnen Sie dann ein PowerShell-Terminal mit diesem Ordner als aktuellem Standort. Bestätigen Sie den Pfad und die Dateien mit Get-Location und Get-ChildItem. Der folgende Code erfordert genau einen Prüfsummen-Eintrag für $isoName und vergleicht alle 64 hexadezimalen Zeichen ohne Berücksichtigung der Groß-/Kleinschreibung. Stimmen Sie das Point-Release-Suffix, die Live-Server-Bezeichnung und die Architektur mit Ihrem tatsächlichen Download ab.
$isoName = 'ubuntu-26.04.1-live-server-amd64.iso'
$pattern = '^([0-9A-Fa-f]{64}) [ *]' + [regex]::Escape($isoName) + '$'
$entries = @(Get-Content -LiteralPath '.\SHA256SUMS' | Where-Object { $_ -match $pattern })
if ($entries.Count -ne 1) {
throw 'Expected exactly one matching checksum entry.'
}
$expected = ($entries[0] -split '\s+', 2)[0]
$actual = (Get-FileHash -LiteralPath $isoName -Algorithm SHA256).Hash
if ($actual -ieq $expected) {
'SHA-256 MATCH'
} else {
throw 'SHA-256 MISMATCH: do not use this image.'
}
Ein erfolgreicher Vergleich gibt SHA-256 MATCH aus. Ein Fehler wegen eines fehlenden Eintrags deutet auf eine Diskrepanz zwischen Dateiname oder Prüfsummenliste hin, während eine Hash-Diskrepanz bedeutet, dass der Inhalt unterschiedlich ist. Untersuchen Sie sie separat. Die Get-FileHash-Dokumentation erklärt Datei-Hashing und die Auswahl des Algorithmus.
Vergleichen Sie den ISO-Hash unter Linux
Wechseln Sie in den Ordner, der die drei Dateien enthält, und bestätigen Sie Ihren Standort mit pwd und ls. Überprüfen Sie sha256sum --help auf Unterstützung für --check und --ignore-missing. Der untenstehende Befehl überspringt aufgelistete Dateien, die im aktuellen Ordner fehlen, was nützlich ist, wenn eine Prüfsummenliste mehrere Bildtypen oder Architekturen enthält.
sha256sum --check --ignore-missing SHA256SUMS
printf 'exit=%s\n' "$?"
Suchen Sie nach ubuntu-26.04.1-live-server-amd64.iso: OK für Ihre ausgewählte Datei und Exit-Status 0. Wenn mehrere ISOs vorhanden sind, bedeutet das OK-Ergebnis einer anderen Datei nicht, dass das von Ihnen gewählte Abbild bestanden hat. Der Befehl schlägt fehl, wenn keine Dateien zur Überprüfung vorhanden sind oder wenn die Inhalte abweichen. Er überprüft nicht automatisch beliebige Dateien, die nicht auf der Liste stehen.
Die Windows- und Linux-Beispiele sind alternative Möglichkeiten, ein ISO mit derselben signaturgeprüften Liste zu vergleichen. Sie benötigen nicht beide Betriebssysteme. Wenn Sie jedoch in Windows nur einen Hash verglichen haben, ohne die GPG-Signatur zu überprüfen, haben Sie nur den Hash-Vergleichsschritt abgeschlossen.
Fehlerbehebung bei Verifizierungsfehlern
| Symptom | Zuerst prüfen | Aktion |
|---|---|---|
| ISO-Dateiname nicht in der Liste vorhanden | Version, Architektur, exakter Dateiname und Download-Standort | Verwenden Sie Verifizierungsdateien vom gleichen offiziellen Distributionsort wie das ISO |
| Hash stimmt nicht überein | Ob der Download abgeschlossen wurde oder die Datei sich geändert hat | Beenden Sie die Nutzung des ISO; laden Sie es erneut offiziell herunter und wiederholen Sie die Verifizierung |
| Signaturschlüssel nicht verfügbar | Schlüsseldirectory, vollständiger Fingerabdruck und offizielle Schlüsselinstruktionen | Bestätigen Sie den offiziellen Fingerabdruck und beschaffen Sie den erforderlichen öffentlichen Schlüssel |
| Ungültige Signatur | Liste/Signatur-Paarung und versehentliche HTML-Downloads | Laden Sie beide Überprüfungsdateien erneut herunter und prüfen Sie zuerst die Signatur |
Notieren Sie den ursprünglichen ISO-Dateinamen, den Download-Speicherort, den überprüften Signaturschlüsselfingerabdruck und die Ergebnisse. Beim Anfügen von Medien an eine VM wählen Sie die genau überprüfte Datei aus. Das Schreiben eines Images auf USB und die Auswahl eines Installationsziels können Daten verändern, daher überprüfen Sie die heruntergeladene Datei und identifizieren Sie das Installationsziel als separate Aufgaben.




