Startseite
» Gewusst wie
»
Verschlüsseln Sie die Debian 12 Swap-Partition bei jedem Systemstart mit einem neuen Schlüssel.
Verschlüsseln Sie die Debian 12 Swap-Partition bei jedem Systemstart mit einem neuen Schlüssel.
Unter Debian 12 kann eine dedizierte Swap-Partition bei jedem Systemstart mit einem neuen, zufällig generierten Schlüssel verschlüsselt werden. Fügen Sie dazu eine Zuordnung für den Zufallsschlüssel in /etc/crypttabder /etc/fstabDatei `/etc/swap ...
Dieses Verfahren ist für normales Auslagern (Swap) vorgesehen, nicht für den Ruhezustand (Suspend-to-Disk). Da der Schlüssel beim Herunterfahren verworfen wird, kann ein Ruhezustandsabbild beim nächsten Start nicht entschlüsselt werden. Wenn Sie den Ruhezustand benötigen, verwenden Sie stattdessen ein System mit persistentem Schlüssel und eigener Reaktivierungskonfiguration.
Bevor Sie die Swap-Konfiguration ändern
Stellen Sie sicher, dass Sie eine separate Partition mit dem Dateisystemtyp „.bashrc“ verwenden swap. Verwenden Sie nicht die Root-Partition, eine Datenpartition oder eine Festplatte, die benötigte Dateien enthält. Die unten aufgeführten Gerätenamen dienen nur der Veranschaulichung; ersetzen Sie sie durch die entsprechenden Namen Ihres Systems.
Überprüfen Sie die aktiven Swap-Bereiche und gleichen Sie sie mit der Blockgeräteliste ab:
Suchen Sie die Zeile, in der TYPEsich die Partitionen befinden part. Notieren Sie sich deren Wert und bestätigen Sie, dass es sich um dieselbe Partition handelt, die durch angezeigt wird . A identifiziert die Partition selbst und bleibt auch nach der Neuerstellung des Swap-Bereichs stabil. Die UUID des Swap-Dateisystems kann sich ändern, da die verschlüsselte Zuordnung beim Systemstart neu initialisiert wird.FSTYPEswapPARTUUIDswapon --showPARTUUID
Die Terminalausgabe identifiziert das aktive Auslagerungsgerät und unterscheidet dessen Partitionszeile vom Root- und Datendateisystem.
Erstellen Sie /etc/fstabvor der Bearbeitung eine Sicherungskopie. Falls die Partition verwendet wird, deaktivieren Sie nur den Auslagerungsbereich.
sudo cp -a /etc/fstab "/etc/fstab.before-cryptswap.$(date +%s)"
sudo swapoff /dev/nvme0n1p3
Ersetzen Sie /dev/nvme0n1p3das Gerät durch das verifizierte. Durch Deaktivieren des Auslagerungsspeichers werden alle dort gespeicherten Seiten zurück in den Arbeitsspeicher verschoben. Falls der Befehl fehlschlägt oder der Arbeitsspeicher stark ausgelastet ist, brechen Sie den Vorgang ab, schließen Sie speicherintensive Prozesse und versuchen Sie es erneut, sobald ausreichend Arbeitsspeicher verfügbar ist.
Deaktivieren Sie die bestätigte Swap-Partition, bevor Sie deren Boot-Konfiguration ändern.
Konfigurieren Sie eine verschlüsselte Zuordnung mit zufälligem Schlüssel
Öffnen Sie die crypttab-Datei mit einem Root-Editor:
sudoedit /etc/crypttab
Fügen Sie eine Zeile hinzu und ersetzen Sie dabei die Partitionskennung durch die tatsächliche Partitionskennung. Achten Sie im nächsten Schritt YOUR-PARTUUIDdarauf, dass der Zuordnungsname konsistent bleibt.cryptswap
/etc/crypttabDiese Option teilt Debian mit, welches verschlüsselte Blockgerät beim Start erstellt werden soll. Die PARTUUID=Quelle verweist auf die Rohpartition, /dev/urandomstellt einen neuen Schlüssel bereit, plainwählt dm-crypt ohne persistenten LUKS-Header aus und swapweist den crypttab-Helfer an, das zugeordnete Gerät als Swap-Partition zu initialisieren. Verschlüsselungsverfahren, Schlüssellänge und Hash werden explizit gemäß dem Debian Bookworm crypttab-Beispiel angegeben . Die Zuordnung erscheint als /dev/mapper/cryptswap. Die swapOption wird mkswapbeim Start auf diesem zugeordneten Gerät ausgeführt, sodass dessen Inhalt bei jedem Neustart neu initialisiert wird. Verweisen Sie die Quelle nur auf die dedizierte Swap-Partition, die Sie überprüft haben; diese Option ist destruktiv, wenn sie auf eine Partition mit Dateien angewendet wird.
Der Eintrag in crypttab verwendet eine stabile Partitionskennung und einen neuen zufälligen Schlüssel für die Zuordnung namens cryptswap.
Öffnen Sie nun die entsprechende Instanz /etc/fstab. Kommentieren Sie die alte Zeile, die die Roh-Swap-Partition aktiviert, aus oder entfernen Sie sie, einschließlich aller Zeilen, die auf deren aktuelle Swap-UUID verweisen. Fügen Sie stattdessen folgenden Eintrag hinzu:
/dev/mapper/cryptswap none swap sw 0 0
Lassen Sie nicht beide Einträge aktiv: Dadurch könnte die unverschlüsselte Partition neben der verschlüsselten Zuordnung aktiviert werden. Die fstabDatei beschreibt die beim Systemstart aktivierten Swap-Bereiche, während der systemd-cryptsetup-Generator von Debian /etc/crypttabdie entsprechenden Einheiten liest und erstellt. Siehe das Handbuch zum Bookworm-Systemd-cryptsetup-Generator und das fstab-Handbuch von Debian .
Sobald das Mapping verfügbar ist, aktiviert fstab den Swap-Speicher über /dev/mapper/cryptswap anstatt über die Rohpartition.
Starten Sie das System neu und überprüfen Sie den verschlüsselten Swap-Speicher.
Speichern Sie beide Dateien und starten Sie das System neu, damit Debian die Zuordnung beim Start erstellen kann:
sudo reboot
Nach dem erneuten Anmelden sollten Sie sowohl den aktiven Swap-Pfad als auch das dm-crypt-Mapping überprüfen:
swapon --show
sudo cryptsetup status cryptswap
Der Swap-Eintrag sollte /dev/mapper/cryptswapdie Partition selbst und nicht deren Rohdaten enthalten. Die Ausgabe des cryptsetup-Status sollte eine aktive Klartext-Zuordnung und die erwartete zugrunde liegende Partition anzeigen. Diese zweite Prüfung ist wichtig: Ein einzelner Swap-Eintrag swapon --showbeweist nicht, dass die Partition verschlüsselt ist.
Falls die Zuordnung fehlt, überprüfen Sie die Schreibweise des PARTUUIDPfads lsblkund prüfen Sie das Boot-Log mit dem Befehl `bootlog` sudo journalctl -b -u systemd-cryptsetup@cryptswap.service. Stellen Sie sicher, dass der alte Raw-Device-Eintrag nicht mehr aktiv ist /etc/fstab. Führen Sie mkswapnach dem Einrichten der Zuordnung keinen Befehl direkt auf der Raw-Partition aus.
Informieren Sie sich, was diese Änderung schützt.
Da bei jedem Systemstart ein neuer Schlüssel generiert wird, werden die während der jeweiligen Sitzung in den Auslagerungsspeicher geschriebenen Daten auf dem Blockgerät verschlüsselt. Der Schlüssel der vorherigen Sitzung wird nach dem Herunterfahren nicht beibehalten. Dies ist nützlich, wenn ein Gerät ausgeschaltet und sein Speicher untersucht werden soll. Der restliche Speicherplatz wird dabei nicht verschlüsselt, Daten werden nicht geschützt, solange Debian läuft, und Klartext, der vor der Konvertierung möglicherweise auf der Partition verblieben ist, wird nicht automatisch gelöscht. Falls alte Auslagerungsdateien sensible Daten enthalten, sollten deren Löschung als separate Aufgabe für den jeweiligen Speicher durchgeführt werden. Eine Neuformatierung auf Dateisystemebene garantiert keine sichere Löschung, insbesondere nicht bei SSDs.
Die Bookworm-Installationsanleitung von Debian beschreibt die Verwendung von Zufallsschlüsselverschlüsselung für den Auslagerungsspeicher als geeignet und weist darauf hin, dass dadurch das Wiederherstellen eines Ruhezustandsabbilds nach einem Neustart verhindert wird. Siehe dazu den Abschnitt „Verschlüsselte Volumes“ in der Debian-12-Installationsanleitung . Verwenden Sie für das aktive Gerät die beiden oben genannten Befehle zur Überprüfung: Der Mapper sollte aktiv sein und das zugehörige Gerät sollte mit der ausgewählten Partition übereinstimmen.