GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So verschlüsseln Sie das Root-Dateisystem unter Linux

Als Systemadministrator wissen Sie wahrscheinlich bereits, wie wichtig es ist, Ihre Laufwerke zu verschlüsseln .

Sollte Ihr Laptop gestohlen werden, könnte selbst ein unerfahrener Hacker die auf den Datenträgern enthaltenen Informationen extrahieren.

Es genügt ein einfacher USB-Stick mit einer LiveCD drauf und alles wäre geklaut.

Glücklicherweise gibt es Möglichkeiten, dies zu verhindern:indem Sie die auf Ihren Festplatten gespeicherten Daten verschlüsseln.

In diesem Tutorial sehen wir uns die Schritte an, die erforderlich sind, um eine vollständige Systemverschlüsselung durchzuführen . Möglicherweise finden Sie online andere Tutorials, die sich beispielsweise auf das Verschlüsseln nur einer Datei oder von Home-Partitionen konzentrieren.

In diesem Fall verschlüsseln wir das gesamte System also die gesamte Root-Partition und den Boot-Ordner. Wir werden einen Teil des Bootloaders verschlüsseln.

Bereit?

Voraussetzungen

Um alle in diesem Handbuch beschriebenen Vorgänge ausführen zu können, benötigen Sie natürlich Systemadministratorrechte.

Um dies zu überprüfen, vergewissern Sie sich, dass Sie zur „sudo “-Gruppe (für Debian-basierte Distributionen) oder “Wheel “ (auf RedHat-basierten).

Wenn Sie die folgende Ausgabe sehen, sollten Sie startklar sein.

Bevor Sie fortfahren, ist es wichtig zu wissen, dass das Verschlüsseln von Datenträgern nicht ohne Risiken ist.

Der Vorgang umfasst das Formatieren Ihrer gesamten Festplatte was bedeutet, dass Sie Daten verlieren werden wenn Sie es nicht sichern. Daher ist es möglicherweise eine gute Idee, Ihre Dateien zu sichern, unabhängig davon, ob Sie dies auf einem externen Laufwerk oder in einer Online-Cloud tun möchten.

Wenn Sie sich nicht sicher sind, welche Schritte zum Sichern Ihres gesamten Systems erforderlich sind, empfehle ich Ihnen, das folgende Tutorial zu lesen, das es in klaren Worten erklärt.

Jetzt, da alles eingerichtet ist, können wir damit beginnen, unser gesamte System zu verschlüsseln.

Identifizieren Sie Ihre aktuelle Situation

Dieses Tutorial ist in drei Teile gegliedert:einen für jedes Szenario, mit dem Sie möglicherweise konfrontiert sind.

Nachdem Sie Ihre aktuelle Situation identifiziert haben, können Sie direkt zu dem Kapitel navigieren, das Sie interessiert.

Wenn Sie ein System verschlüsseln möchten, das bereits unverschlüsselte Daten enthält, haben Sie zwei Möglichkeiten:

  • Sie können Ihrem Computer oder Server ein zusätzliches Laufwerk hinzufügen und es als bootfähiges Laufwerk konfigurieren :Sie können zum ersten Teil gehen.
  • Sie können nichts hinzufügen eine zusätzliche Festplatte zu Ihrem Computer (z. B. ein Laptop mit Garantie):Sie finden die erforderlichen Informationen in Teil zwei.

Wenn Sie ein brandneues System installieren, also die Distribution von Grund auf neu installieren, können Sie Ihre gesamte Festplatte direkt vom grafischen Installationsprogramm aus verschlüsseln . Als Konsequenz können Sie zu Teil drei gehen.

Festplattenlayout entwerfen

Wann immer Sie neue Partitionen erstellen, verschlüsselt oder unverschlüsselt, ist es sehr wichtig, das Festplattendesign zu wählen im Voraus.

In diesem Fall werden wir unsere Festplatte mit einem MBR-Layout entwerfen :Die ersten 512 Bytes der bootfähigen Festplatte werden für die erste Stufe des GRUB reserviert (sowie Metadaten für unsere Partitionen).

Die erste Partition ist eine leere Partition reserviert für Systeme, die EFI verwenden (oder UEFI) als Boot-Firmware. Wenn Sie sich in Zukunft für die Installation von Windows 10 entscheiden, steht Ihnen dafür bereits eine Partition zur Verfügung.

Die zweite Partition unserer Festplatte wird als LUKS-LVM formatiert Partition, die einen physikalischen Datenträger (die Plattenpartition selbst) sowie eine Datenträgergruppe mit zwei logischen Datenträgern enthält:einen für das Root-Dateisystem und einen für eine kleine Auslagerungspartition.

Wie Sie sehen können, die zweite Stufe des GRUB wird ebenfalls verschlüsselt:Das liegt daran, dass wir uns dafür entschieden haben, den Boot-Ordner auf derselben Partition zu speichern.

Natürlich sind Sie nicht auf das hier bereitgestellte Design beschränkt, Sie können beispielsweise zusätzliche logische Volumes für Ihre Protokolle hinzufügen.

Dieses Design wird unsere Roadmap für dieses Tutorial sein:Wir werden mit einer brandneuen Festplatte beginnen und alle Teile zusammen implementieren.

Data-at-Rest-Verschlüsselung

Dieses Tutorial konzentriert sich auf die Verschlüsselung ruhender Daten . Wie der Name schon sagt, Data-at-Rest-Verschlüsselung bedeutet, dass Ihr System verschlüsselt ist, d.h. niemand kann davon lesen, wenn es ruht oder ausgeschaltet ist.

Diese Verschlüsselung ist sehr nützlich, wenn Ihr Computer gestohlen werden sollte. Hacker könnten die Daten auf der Festplatte nicht lesen, es sei denn, sie kennen die Passphrase, die Sie in den nächsten Abschnitten auswählen werden.

Es besteht jedoch immer noch das Risiko, dass Ihre Daten für immer gelöscht werden:Keinen Lesezugriff auf eine Festplatte zu haben, bedeutet nicht, dass sie nicht einfach Partitionen darauf entfernen können.

Stellen Sie daher sicher, dass Sie eine Sicherungskopie Ihrer wichtigen Dateien an einem sicheren Ort aufbewahren.

Root-Dateisystem auf neuer Festplatte verschlüsseln

Wie in der Einführung beschrieben, werden wir das Root-Dateisystem verschlüsseln von einer neuen Festplatte, die überhaupt keine Daten enthält. Dies ist sehr wichtig, da die verschlüsselte Festplatte dabei formatiert wird.

Gehen Sie zu dem System, das Sie verschlüsseln möchten, und schließen Sie die neue Festplatte an. Identifizieren Sie zunächst Ihre aktuelle Festplatte , die wahrscheinlich „/dev/sda“ heißt, und die Festplatte, die Sie gerade angeschlossen haben (wahrscheinlich „/dev/sdb“).

Wenn Sie Zweifel an der Übereinstimmung zwischen Namen und Seriennummern haben, können Sie Hersteller und Seriennummern mit der Option „-o“ von lsblk anhängen.

$ lsblk -do +VENDOR,SERIAL

In diesem Fall heißt die Festplatte mit den Daten „/dev/sda“ und die neue heißt „/dev/sdb“.

Zunächst müssen wir das Layout erstellen, das wir in der Einführung angegeben haben, dh eine Partition, die ein EFI sein wird eins und eins LUKS-LVM Partition.

Grundlegendes Festplattenlayout erstellen

Der erste Schritt auf unserem Weg zur vollständigen Festplattenverschlüsselung beginnt mit zwei einfachen Partitionen:eine EFI (auch wenn wir MBR verwenden, falls Sie in Zukunft wechseln möchten) und einen für unseren LVM .

Um neue Partitionen auf Ihrer Festplatte zu erstellen, verwenden Sie den „fdisk“-Befehl und geben Sie die zu formatierende Festplatte an.

$ sudo fdisk /dev/sdb

Wie in der Einleitung erklärt, ist die erste Partition 512 MB einer und der andere nimmt den verbleibenden Speicherplatz auf der Festplatte ein.

Im Dienstprogramm „fdisk“ können Sie mit der Option „n“ eine neue Partition erstellen und mit „+512M eine Größe von 512 Megabyte angeben “.

Achten Sie darauf, den Partitionstyp auf W95 FAT32 zu ändern Verwenden Sie die Option „t“ und geben Sie „b“ als Typ an.

Großartig, jetzt, da Sie Ihre erste Partition haben, werden wir diejenige erstellen, an der wir interessiert sind.

Das Erstellen der zweiten Partition ist noch einfacher.

Verwenden Sie im fdisk-Dienstprogramm „n “, um eine neue Partition zu erstellen und bei den Standardeinstellungen zu bleiben, was bedeutet, dass Sie „Enter“ drücken können ” auf jedem Schritt.

Wenn Sie fertig sind, können Sie einfach „w“ drücken um die Änderungen auf die Festplatte zu schreiben.

Wenn Sie jetzt den Befehl „fdisk“ erneut ausführen, erhalten Sie eine gute Vorstellung von den Änderungen, die Sie an der Festplatte vorgenommen haben.

$ sudo fdisk -l /dev/sdb

Großartig!

Ihre zweite Partition kann formatiert werden, also machen wir uns daran.

Erstellen von LUKS- und LVM-Partitionen auf der Festplatte

Um Laufwerke zu verschlüsseln, werden wir LUKS verwenden , kurz für Linux Unified Key-Setup Projekt.

LUKS ist eine Spezifikation für mehrere Backends, die in einigen Versionen des Linux-Kernels implementiert sind.

In diesem Fall verwenden wir das Submodul „dm-crypt“ e des Linux-Storage-Stacks.

Wie der Name schon sagt, "dm-crypt" ist Teil des Device Mapper-Moduls, das darauf abzielt, eine Abstraktionsebene zwischen Ihren physischen Festplatten und der Art und Weise zu schaffen, wie Sie Ihren Speicherstapel entwerfen.

Diese Information ist sehr wichtig, da sie bedeutet, dass Sie so ziemlich jedes Gerät mit „dm-crypt“ verschlüsseln können Backend.

In diesem Fall werden wir eine Festplatte verschlüsseln, die eine Reihe von LVM-Partitionen enthält, aber Sie können auch einen USB-Speicherstick oder eine Diskette verschlüsseln.

Um mit dem „dm-crypt“-Modul zu interagieren, verwenden wir das „cryptsetup " Befehl.

Offensichtlich müssen Sie es möglicherweise auf Ihrem Server installieren, wenn Sie es noch nicht haben.

$ sudo apt-get instal cryptsetup

$ which cryptsetup

Nachdem das cryptsetup nun auf Ihrem Computer verfügbar ist, erstellen Sie Ihre erste LUKS-formatierte Partition .

Um eine LUKS-Partition zu erstellen, verwenden Sie die Datei „cryptsetup “, gefolgt von „luksFormat ” Befehl, der die angegebene Partition (oder Platte) formatiert.

 $ sudo cryptsetup luksFormat --type luks1 /dev/sdb2

Hinweis :Warum geben wir also LUKS1 an Formatierungstyp? Ab Januar 2021 unterstützt GRUB (unser Bootloader) keine LUKS2-Verschlüsselung. Hinterlassen Sie unbedingt einen Kommentar, wenn Sie feststellen, dass LUKS2 jetzt für den GRUB-Bootlader freigegeben ist.

Wie Sie sehen können, werden Sie benachrichtigt, dass dieser Vorgang alle auf der Festplatte gespeicherten Daten löscht. Überprüfen Sie die Festplatte, die Sie formatieren, ein letztes Mal und geben Sie „JA ein ” wenn du bereit bist.

Gleich danach werden Sie mit einer Passphrase aufgefordert. LUKS verwendet zwei Authentifizierungsmethoden:eine Passphrase basierend auf einem Passwort, das Sie beim Entschlüsseln eingeben.

LUKS kann auch Schlüssel verwenden .Tasten verwenden , Sie können es zum Beispiel auf einem Teil Ihrer Festplatte speichern und Ihr System kann sich automatisch darum kümmern.

Wählen Sie eine starke Passphrase, geben Sie sie erneut ein und warten Sie, bis die Festplattenverschlüsselung abgeschlossen ist.

Wenn Sie fertig sind, können Sie mit „lsblk“ nachsehen “ Befehl, dass Ihre Partition jetzt als LUKS-Partition verschlüsselt ist.

Großartig ! Sie haben jetzt eine verschlüsselte Partition.

$ lsblk -f

Um zu überprüfen, ob Ihre Partition korrekt formatiert ist, können Sie die Datei „cryptsetup “, gefolgt von „luksDump ” und geben Sie den Namen des verschlüsselten Geräts an .

$ sudo cryptsetup luksDump /dev/sdb2

Ihre Version sollte für „LUKS1 auf „1“ gesetzt sein ”-Format und Sie sollten unten die verschlüsselte Passphrase in einem der Schlüsselschlitze sehen.

Verschlüsseltes LVM auf Festplatte erstellen

Jetzt, da Ihre LUKS-verschlüsselte Partition fertig ist, können Sie sie „öffnen“. Das „Öffnen“ einer verschlüsselten Partition bedeutet einfach, dass Sie auf Daten auf der Festplatte zugreifen werden.

Um Ihr verschlüsseltes Gerät zu öffnen, verwenden Sie den Befehl „cryptsetup“, gefolgt von „luksOpen“, dem Namen des verschlüsselten Geräts und einem Namen.

$ sudo cryptsetup luksOpen <encrypted_device> <name>

In diesem Fall haben wir uns entschieden, das Gerät „cryptlvm“ zu nennen “.

Die Verwendung des „lsblk ” erneut ausführen, können Sie sehen, dass ein neues Gerät zur bestehenden Geräteliste hinzugefügt wurde. Die zweite Partition enthält jetzt ein Gerät namens „cryptlvm“, das Ihre entschlüsselte Partition ist.

Jetzt, da alles bereit ist, können wir damit beginnen, unsere beiden LVMs zu erstellen:einen für unsere Root-Partition und einen für den Swap.

Zunächst erstellen wir mit der Datei „pvcreate ein physisches Volume für unsere neue Festplatte ”-Befehl.

# Optional, if you don't have LVM commands : sudo apt-get install lvm2

$ sudo pvcreate /dev/mapper/cryptlvm

Nachdem Ihr physisches Volume nun bereit ist, können Sie damit eine Volume-Gruppe mit dem Namen „cryptvg“ erstellen “.

$ sudo vgcreate cryptvg /dev/mapper/cryptlvm

Nachdem Ihre Volume-Gruppe fertig ist, können Sie Ihre beiden logischen Volumes erstellen.

In diesem Fall ist die erste Partition eine 13-GB-Partition und die Swap-Partition nimmt den restlichen Speicherplatz ein. Stellen Sie sicher, dass Sie diese Nummern für Ihren speziellen Fall ändern.

Um unser Root-Dateisystem zu hosten, werden wir ein EXT4-Dateisystem erstellen auf dem logischen Volume.

$ sudo lvcreate -n lvroot -L 13G cryptvg

$ sudo mkfs.ext4 /dev/mapper/cryptvg-lvroot

Auslagerungspartition erstellen kann mit den gleichen Schritten erreicht werden, indem man „lvcreate“ und „mkswap“ verwendet.

$ sudo lvcreate -n lvswap -l 100%FREE cryptvg

$ sudo mkswap /dev/mapper/cryptvg-lvswap

Großartig! Nachdem Ihre Partitionen erstellt wurden, ist es an der Zeit, Ihr bestehendes Root-Dateisystem auf das neu erstellte zu übertragen.

Gesamtes Dateisystem auf verschlüsselte Festplatte übertragen

Bevor Sie Ihr gesamtes Dateisystem übertragen, ist es möglicherweise eine gute Idee zu überprüfen, ob Sie über genügend Speicherplatz verfügen auf dem Ziellaufwerk.

$ df -h 

Um Ihr gesamtes Dateisystem auf Ihre neu erstellte Partition zu übertragen, verwenden Sie die Datei „rsync ”-Befehl.

Mounten Sie Ihr neu erstelltes logisches Volume und kopieren Sie Ihre Dateien und Ordner rekursiv auf das Ziellaufwerk.

$ sudo mount /dev/mapper/cryptvg-lvroot /mnt

$ sudo rsync -aAXv / --exclude="mnt" /mnt --progress

Dieser Vorgang kann je nach Datenmenge, die Sie übertragen müssen, einige Zeit in Anspruch nehmen.

Nach einer Weile sollte Ihr gesamtes Dateisystem auf Ihr verschlüsseltes Laufwerk kopiert werden. Nun, da die Datei “/boot” verschlüsselt ist, müssen Sie Stufe 1 des GRUB entsprechend neu installieren.

Installieren und konfigurieren Sie den GRUB-Bootloader

Warum sollten Sie GRUB also neu installieren und entsprechend neu konfigurieren?

Um diese Frage zu beantworten, müssen Sie eine grundlegende Vorstellung davon haben, wie Ihr System hochfährt, wenn Sie einen herkömmlichen BIOS/MBR-Startvorgang verwenden

Wie in der Einleitung erklärt, ist GRUB in zwei (manchmal drei) Teile geteilt:GRUB Stufe 1 und GRUB Stufe 2 . Stufe 1 sucht nur nach dem Speicherort von Stufe 2, der sich häufig im „/boot“ befindet Ordner Ihres Dateisystems.

Die Phase 2 ist für viele Aufgaben verantwortlich:Laden der notwendigen Module, Laden des Kernels in den Speicher und Starten des initramfs-Prozesses.

Wie Sie verstanden haben, ist Stufe 2 hier verschlüsselt, also müssen wir Stufe 1 (in den ersten 512 Bytes Ihrer Festplatte) mitteilen, dass sie zuerst entschlüsselt werden muss.

Installieren Sie GRUB Phase 1 &2 erneut

Um die erste Stufe des GRUB neu zu installieren, müssen Sie zunächst die „cryptomount“ aktivieren “, das den Zugriff auf verschlüsselte Geräte in der GRUB-Umgebung ermöglicht.

Dazu müssen Sie “/etc/default/grub” bearbeiten Datei und fügen Sie “GRUB_ENABLE_CRYPTODISK=y” hinzu Option.

Sie sitzen jedoch gerade auf dem System, das Sie verschlüsseln möchten. Folglich müssen Sie in Ihr neues Laufwerk chrooten, um die Befehle richtig auszuführen.

Chroot im verschlüsselten Laufwerk

Um in Ihr verschlüsseltes Laufwerk zu chrooten, müssen Sie die folgenden Befehle ausführen.

$ sudo mount --bind /dev /mnt/dev
$ sudo mount --bind /run /mnt/run

$ sudo chroot /mnt/

$ sudo mount --types=proc proc /proc
$ sudo mount --types=sysfs sys /sys

Nachdem Sie diese Befehle ausgeführt haben, sollten Sie sich jetzt im Kontext Ihres verschlüsselten Laufwerks befinden.

$ vi /etc/default/grub
GRUB_ENABLE_CRYPTODISK=y

Wie in der GRUB-Dokumentation angegeben, konfiguriert diese Option GRUB so, dass es nach verschlüsselten Geräten sucht und zusätzliche Befehle hinzufügt, um sie zu entschlüsseln.

Nachdem Stufe 1 nun konfiguriert ist, können Sie sie mit dem Befehl grub-install in Ihrem MBR installieren .

$ grub-install --boot-directory=/boot /dev/sdb

Hinweis :Seien Sie vorsichtig, Sie müssen „/dev/sdb angeben “ und nicht „/dev/sdb1“.

Wie Sie wahrscheinlich bemerkt haben, haben Sie standardmäßig einen „i386-pc, wenn Sie keine Optionen für die GRUB-Installation angeben ”-Installation (die für eine BIOS-basierte Firmware entwickelt wurde).

Installieren Sie GRUB Stage 2 erneut

Mit den oben beschriebenen Schritten wurde Stufe 1 aktualisiert, aber wir müssen auch Stufe 2 mitteilen, dass es sich um eine verschlüsselte Festplatte handelt.

Um dies zu erreichen, gehen Sie zu „/etc/default/grub“ und fügen Sie eine weitere Zeile für Ihre GRUB-Stufe 2 hinzu.

GRUB_CMDLINE_LINUX="cryptdevice=UUID=<encrypted_device_uuid> root=UUID=<root_fs_uuid>"

Dies ist eine wichtige Zeile, da sie der zweiten Stufe von GRUB mitteilt, wo sich das verschlüsselte Laufwerk befindet und wo sich die Root-Partition befindet.

Um die benötigten UUIDs zu identifizieren, können Sie den Befehl „lsblk“ mit der Option „-f“ verwenden.

$ lsblk -f 

Unter Verwendung dieser UUIDs würden wir die folgende Zeile zur GRUB-Konfigurationsdatei hinzufügen.

GRUB_CMDLINE_LINUX="cryptdevice=UUID=1b9a0045-93d5-4560-a6f7-78c07e1e15c4 root=UUID=dd2bfc7f-3da2-4dc8-b4f0-405a758f548e"

Um Ihre aktuelle GRUB-Installation zu aktualisieren, können Sie die Datei „update-grub2 verwenden ”-Befehl in Ihrer Chroot-Umgebung.

$ sudo update-grub2

Nachdem Sie nun Ihre GRUB-Installation aktualisiert haben, sollte Ihr GRUB-Menü (d. h. Stufe 2) geändert werden und Sie sollten den folgenden Inhalt sehen, wenn Sie die "/boot/grub/grub.cfg" untersuchen Datei.

Wie Sie sehen können, wurde die GRUB-Konfigurationsdatei geändert und Ihr System verwendet jetzt „cryptomount“, um das verschlüsselte Laufwerk zu finden.

Damit Ihr System ordnungsgemäß bootet, müssen Sie Folgendes überprüfen:

  • Sie laden die richtigen Module wie cryptodisk, luks, lvm und andere;
  • Die „Kryptomount ” Anweisung ist richtig gesetzt;
  • Der Kernel wird mit dem „cryptdevice geladen ” Anweisung, die wir gerade im vorherigen Abschnitt festgelegt haben.
  • Die angegebene UUID ist korrekt:das „cryptdevice „Einer zeigt auf die LUKS2-verschlüsselte Partition und der „Root“-Part auf das ext4-Root-Dateisystem.

Crypttab- und Fstab-Dateien ändern

Einer der ersten Schritte von initramfs besteht darin, Ihre Volumes mit “/etc/crypttab” einzuhängen und “/etc/fstab” Dateien im Dateisystem.

Infolgedessen und weil Sie neue Volumes erstellen, müssen Sie diese Dateien möglicherweise ändern, um die richtige UUID in sie einzufügen.

Gehen Sie zunächst zu “/etc/crypttab” Datei (Sie können sie erstellen, falls sie noch nicht existiert) und fügen Sie den folgenden Inhalt hinzu

$ nano /etc/crypttab

# <target name>   <source device>        <key file> <options>
  cryptlvm        UUID=<luks_uuid>       none       luks

Wenn Sie sich bezüglich der UUID Ihres verschlüsselten Geräts nicht sicher sind, können Sie die „blkid ” um die Informationen zu erhalten.

$ blkid | grep -i LUKS 

Nun, da die crypttab Datei geändert wird, müssen Sie nur die fstab entsprechend ändern.

$ nano /etc/fstab

# <file system>       <mount point>   <type>  <options>             <dump>    <pass>
UUID=<ext4 uuid>      /               ext4    errors=remount-ro     0         1

Wenn Sie sich bezüglich der UUID Ihres ext4-Dateisystems nicht sicher sind, können Sie erneut die Datei „blkid verwenden ” Befehl erneut.

$ blkid | grep -i ext4

Fast fertig!

Nachdem Ihre GRUB- und Konfigurationsdateien nun korrekt konfiguriert sind, müssen wir nur noch das initramfs-Image konfigurieren.

Initramfs-Image neu konfigurieren

Unter allen Boot-Skripten sucht initramfs nach dem Root-Dateisystem, das Sie im vorherigen Kapitel angegeben haben.

Um jedoch das Root-Dateisystem zu entschlüsseln, muss es die richtigen initramfs-Module aufrufen, nämlich die „cryptsetup-initramfs " ein. In Ihrer Chroot-Umgebung können Sie den folgenden Befehl ausführen:

$ apt-get install cryptsetup-initramfs 

Um die cryptsetup-Module in Ihr initramfs-Image einzubinden, stellen Sie sicher, dass Sie die Datei „update-initramfs“ ausführen ”-Befehl.

$ update-initramfs -u -k all

Das ist es!

Sie haben alle erforderlichen Teile erfolgreich zusammengestellt, um eine vollständig verschlüsselte Festplatte auf Ihrem System zu erstellen. Sie können Ihren Computer jetzt neu starten und sich Ihren neuen Startvorgang ansehen.

Auf verschlüsseltem Gerät booten

Beim Booten ist der erste Bildschirm, den Sie sehen, die erste Phase von GRUB, die versucht, die zweite Phase von GRUB zu entschlüsseln.

Wenn Sie diese Passwortabfrage sehen, bedeutet dies, dass Sie keine Fehler in Ihrer Phase-1-Konfiguration haben.

Hinweis :Beachten Sie, dass dieser Bildschirm möglicherweise nicht Ihrem üblichen Tastaturlayout entspricht . Wenn Sie also eine falsche Passwortabfrage erhalten, sollten Sie versuchen, so zu tun, als hätten Sie beispielsweise eine US-Tastatur oder eine AZERTY-Tastatur.

Wenn Sie das richtige Passwort eingeben, wird Ihnen das GRUB-Menü angezeigt.

Wenn Sie diesen Bildschirm sehen, bedeutet dies, dass Ihre Stufe 1 die Stufe 2 öffnen konnte. Sie können die Option „Ubuntu“ auswählen und Ihr System booten.

Auf dem nächsten Bildschirm werden Sie aufgefordert, die Passphrase erneut einzugeben.

Dies ist ganz normal, da Ihre Boot-Partition verschlüsselt ist. Folglich benötigen Sie eine Passphrase, um Stufe 2 zu entsperren, und eine, um das gesamte Root-Dateisystem zu entsperren.

Glücklicherweise gibt es eine Möglichkeit, dies zu vermeiden: indem Sie eine Schlüsseldatei in das initramfs-Image einbetten. Dafür haben ArchLinux-Mitarbeiter ein geschrieben ausgezeichnetes Tutorial zum Thema .

In diesem Fall geben wir einfach die Passphrase ein und drücken die Eingabetaste.

Nach einer Weile, wenn der Init-Prozess abgeschlossen ist, sollte Ihnen der Sperrbildschirm Ihrer Benutzeroberfläche angezeigt werden!

Herzlichen Glückwunsch, Sie haben erfolgreich ein ganzes System unter Linux verschlüsselt!

Root-Dateisystem auf bestehender Festplatte verschlüsseln

In einigen Fällen müssen Sie möglicherweise eine vorhandene Festplatte verschlüsseln, ohne die Möglichkeit zu haben, eine der Festplatten auf Ihrem Computer zu entfernen. Dieser Fall kann beispielsweise auftreten, wenn Sie eine Festplatte unter Garantie haben.

In diesem Fall ist der Vorgang ganz einfach:

  • Erstellen Sie einen bootfähigen USB-Stick (oder Wechseldatenträger) mit einem ISO der Distribution Ihrer Wahl;
  • Verwenden Sie das Gerät, um eine LiveCD Ihrer Distribution zu starten und sich anzumelden;
  • Identifizieren Sie auf der LiveCD die Festplatte, die Ihre Root-Distribution enthält, und erstellen Sie eine Sicherungskopie davon;
  • Mounten Sie die primäre Partition im Ordner Ihrer Wahl und folgen Sie den Anweisungen des vorherigen Kapitels;

Warum müssen Sie also eine LiveCD verwenden, wenn Sie einen nicht entfernbaren Datenträger verschlüsseln möchten?

Wenn Sie Ihre primäre Hauptfestplatte verschlüsseln würden, müssten Sie sie aushängen. Da es sich jedoch um die Root-Partition Ihres Systems handelt, können Sie sie nicht unmounten , folglich müssen Sie eine LiveCD verwenden.

Root-Dateisystem vom Installationsassistenten verschlüsseln

In einigen Fällen betten manche Distributoren den Verschlüsselungsprozess direkt in den Installationsassistenten ein

Wenn Sie kein vorhandenes Dateisystem von einem System auf ein anderes übertragen möchten, könnten Sie versucht sein, diese Option zu verwenden.

Am Beispiel von Ubuntu 20.04 schlägt der Installationsprozess im Festplattenkonfigurationsassistenten eine Festplattenverschlüsselung vor.

Wenn Sie diese Option auswählen, haben Sie eine ähnliche Einrichtung wie in den vorherigen Abschnitten. Die meisten Distributionen entscheiden sich jedoch dafür, “/boot” nicht zu verschlüsseln Ordner.

Wenn Sie den Ordner „/boot“ verschlüsseln möchten, empfehlen wir Ihnen, den ersten Abschnitt dieses Tutorials zu lesen.

Fehlerbehebung

Da sich Open Source ständig ändert, besteht die Möglichkeit, dass Sie Ihr System nicht booten können, selbst wenn Sie die Schritte dieses Tutorials sorgfältig befolgt haben.

Da Fehlerquellen jedoch wahrscheinlich unendlich und für jeden Benutzer spezifisch sind, wäre es sinnlos, jedes einzelne Problem aufzuzählen, auf das Sie stoßen können.

Meistens ist es jedoch ziemlich wichtig zu wissen, bei welchem ​​Schritt des Startvorgangs Sie scheitern.

Wenn Sie einen Bildschirm mit einer „Grub Rescue“-Eingabeaufforderung sehen, bedeutet dies wahrscheinlich, dass Sie auf Stufe 1 stecken bleiben, sodass der Bootloader die Festplatte mit der zweiten Stufe nicht finden konnte.

Wenn Sie sich in einer initramfs-Eingabeaufforderung befinden , bedeutet dies wahrscheinlich, dass während des Init-Prozesses etwas schief gelaufen ist :

  • Sind Sie sicher, dass Sie die Dateisysteme angegeben haben, die in den crypttab- und fstab-Dateien einzuhängen sind?
  • Sind Sie sicher, dass alle Module aktuell in Ihr initramfs-Image geladen wurden? Vermissen Sie nicht zum Beispiel die Module cryptsetup oder lvm?

Nachfolgend finden Sie einige Ressourcen, die wir während des Schreibens dieses Tutorials interessant fanden. Sie könnten einige Antworten auf Ihre Probleme enthalten:

  • Ein ganzes System verschlüsseln:ein ähnliches Tutorial für ArchLinux;
  • Manuelle Systemverschlüsselung auf Ubuntu:Schritte, die verwendet werden, um in einem Root-Dateisystem zu chrooten.

Schlussfolgerung

In diesem Tutorial haben Sie gelernt, wie Sie ein gesamtes Root-Dateisystem mit dem Ordner „/boot“ unter Verwendung der LUKS-Spezifikation verschlüsseln können.

Sie haben auch etwas über den Linux-Startvorgang und die verschiedenen Schritte gelernt, die Ihr System durchläuft, um Ihr Betriebssystem zu starten.

Eine vollständige Systemverschlüsselung erreichen ist ziemlich lang, aber sehr interessant für Benutzer, die bereit sind, tiefer in die Linux- und Open-Source-Welt einzutauchen.

Wenn Sie an Linux-Systemadministration interessiert sind , lesen Sie unbedingt unsere anderen Tutorials und navigieren Sie zu unserem speziellen Abschnitt.


Linux
  1. So verwenden Sie systemd-nspawn für die Linux-Systemwiederherstellung

  2. So partitionieren Sie eine Festplatte unter Linux

  3. So erhöhen Sie die Inode-Nummer der Festplatte in Linux

  4. So ändern Sie den Hostnamen unter Linux

  5. So verschlüsseln Sie ein einzelnes Linux-Dateisystem

So listen Sie Festplattenpartitionen unter Linux auf

So mounten Sie ein Remote-Linux-Dateisystem mit SSHFS

So verschlüsseln Sie eine Partition unter Linux

So verschlüsseln Sie Dateien unter Linux

So listen Sie Dienste unter Linux auf

So formatieren Sie Festplattenpartitionen unter Linux