{"id":2827,"date":"2018-10-19T20:18:51","date_gmt":"2018-10-19T18:18:51","guid":{"rendered":"http:\/\/speefak.spdns.de\/oss_lifestyle\/?p=2827"},"modified":"2025-10-15T19:52:02","modified_gmt":"2025-10-15T17:52:02","slug":"lvm-installation-auf-luks-basis-und-manueller-partitionierung","status":"publish","type":"post","link":"https:\/\/speefak.spdns.de\/oss_lifestyle\/lvm-installation-auf-luks-basis-und-manueller-partitionierung\/","title":{"rendered":"LVM Installation auf LUKS Basis &#8211; Installation und manuelle Partitionierung"},"content":{"rendered":"<p>&nbsp;<\/p>\n<p>SICHERHEITSL\u00dcCKE<\/p>\n<table border=\"1\">\n<tbody>\n<tr>\n<td>\n<h2>\u00a0Grundlagen <a id=\"overview\"><\/a><\/h2>\n<\/td>\n<td>\n<h2>Installation<\/h2>\n<\/td>\n<td>\n<h2>Sonstiges<\/h2>\n<\/td>\n<\/tr>\n<tr>\n<td><a href=\"#Verwendungszweck\">Verwendungszweck<\/a><\/td>\n<td><a href=\"#Installationsmedium\">Installationsmedium<\/a><\/td>\n<td><a href=\"#Backups\">Backups<\/a><\/td>\n<\/tr>\n<tr>\n<td><a href=\"#Voraussetzungen\">Voraussetzungen<\/a><\/td>\n<td><a href=\"#Einrichtung der Partitionen\">Einrichtung der Partitionen<\/a><\/td>\n<td><a href=\"#Partition manuell einh\u00e4ngen\">Partition manuell einh\u00e4ngen<\/a><\/td>\n<\/tr>\n<tr>\n<td><a href=\"#Devicemapper - DM-Crypt\">Devicemapper &#8211; DM-Crypt<\/a><\/td>\n<td><a href=\"#Einrichtung des LVM\">Einrichtung des LVM<\/a><\/td>\n<td><a href=\"#LVM Partitionen manuell einh\u00e4ngen\">LVM Partitionen manuell einh\u00e4ngen<\/a><\/td>\n<\/tr>\n<tr>\n<td><a href=\"#LUKS-Erweiterung\">LUKS-Erweiterung<\/a><\/td>\n<td><a href=\"#Installation auf LUKS in LVM\">OS Installation auf LUKS in LVM<\/a><\/td>\n<td><a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/lvm-installation-auf-luks-basis-grub-reparieren-neu-installieren\/\" target=\"_blank\" rel=\"noopener noreferrer\">Grub reparieren \/ neu installieren (LUKS)<\/a><\/td>\n<\/tr>\n<tr>\n<td><a href=\"#Alternativen\">Alternativen<\/a><\/td>\n<td><\/td>\n<td><a href=\"https:\/\/wiki.ubuntuusers.de\/Partitionmanager\/\" target=\"_blank\" rel=\"noopener noreferrer\">LVM GUI ( Partitionmanager )<\/a><\/td>\n<\/tr>\n<tr>\n<td><a href=\"#Partitionen und Laufwerke\">Partitionen und Laufwerke<\/a><\/td>\n<td><a href=\"#DM-Crypt Container - Partition\">DM-Crypt Container \/ Partition<\/a><\/td>\n<td><a href=\"https:\/\/wiki.ubuntuusers.de\/zuluCrypt\/\" target=\"_blank\" rel=\"noopener\">ZuluCrypt ( GUI \/ CLI Manager )<\/a> <span style=\"color: #ff6600;\"><a style=\"color: #ff6600;\" href=\"https:\/\/github.com\/advisories\/GHSA-33qm-768m-wx8p\" target=\"_blank\" rel=\"noopener\">Sicherheitsl\u00fccke<\/a><\/span><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td><\/td>\n<td><a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/luckyluks-luks-container-einfach-und-sicher-verwalten\/\" target=\"_blank\" rel=\"noopener\">LuckyLuks (GUI)<\/a><\/td>\n<\/tr>\n<tr>\n<td><\/td>\n<td><\/td>\n<td><a href=\"https:\/\/wiki.ubuntuusers.de\/Daten_verschl%C3%BCsseln\/\" target=\"_blank\" rel=\"noopener noreferrer\">Datenverschl\u00fcsslung im \u00dcberblick<\/a><\/td>\n<\/tr>\n<tr>\n<td>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<\/td>\n<td>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<\/td>\n<td>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<hr \/>\n<h2 id=\"Verwendungszweck\">Verwendungszweck<\/h2>\n<p>Der Zugriff auf Daten wird \u00fcber das Betriebssystem und die dadurch definierten Dateirechte geregelt. Diese Rechte greifen allerdings nur, wenn das System aktiv ist. Hat eine Person physischen Zugriff auf den Rechner, k\u00f6nnen diese Schutzmechanismen leicht umgangen werden. Sollen Daten in dem Fall gesch\u00fctzt werden, sind weitere Ma\u00dfnahmen n\u00f6tig.<\/p>\n<p>Eine L\u00f6sung f\u00fcr dieses Problem hei\u00dft Kryptografie. Daten werden nicht mehr direkt, sondern nur noch verschl\u00fcsselt auf der Festplatte gespeichert. Hat jemand Zugriff auf den Rechner, braucht er so trotzdem noch den Schl\u00fcssel oder das Passwort, um die Daten auf der Festplatte zu entschl\u00fcsseln. Der Aufwand, den Schl\u00fcssel oder das Passwort durch Ausprobieren herauszufinden, ist dabei so gro\u00df, dass selbst die Chance, durch jahrelanges systematisches Probieren den passenden Schl\u00fcssel zu finden, astronomisch klein bleibt.<\/p>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"Voraussetzungen\">Voraussetzungen<\/h2>\n<p>Debian wie auch die meisten anderen Linux basierenden Betriebssysteme beinhalten bereits alle Softwarepakete, um eine Verschl\u00fcsselung zu nutzen:<\/p>\n<dl>\n<dt><i>cryptsetup<\/i> und <i>dmsetup<\/i><\/dt>\n<dd>Damit werden verschl\u00fcsselte Partitionen eingerichtet und sp\u00e4ter entsperrt\/gesperrt. Ein Initspkript, um dieses beim Booten automatisch zu erledigen, ist ebenfalls enthalten.<\/dd>\n<dt>ein dm-Crypt kompatibler Kernel<\/dt>\n<dd>Die von Debian u.a. Distributionen mitgelieferten Kernel enthalten alle ben\u00f6tigten Module. Falls man einen eigenen Kernel verwenden m\u00f6chte, muss dieser \u00fcber Unterst\u00fctzung f\u00fcr den Devicemapper, dm-crypt und die verwendeten Verschl\u00fcsselungs- und Hashalgorithmen (z.B. AES, SHA-1) verf\u00fcgen.<\/dd>\n<dt><i>initramfs-tools<\/i><\/dt>\n<dd>Falls die Root-Partition selbst verschl\u00fcsselt wird, muss eine separate, unverschl\u00fcsselte \/boot-Partition mit Bootloader, Kernel und initrd anlegt werden. Die <i>initramfs-tools<\/i> unterst\u00fctzen dm-crypt und k\u00f6nnen den gr\u00f6\u00dften Teil der erforderlichen initrd-Konfiguration automatisch erledigen.<\/dd>\n<\/dl>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"Devicemapper - DM-Crypt\">Devicemapper \u2013 DM-Crypt<\/h2>\n<p>Der Linux-Devicemapper ist eine Softwareschicht (seit Kernel 2.6 fest implementiert), die zwischen der Dateisystemebene und den darunterliegenden Ger\u00e4ten und Partitionen liegt. Der Devicemapper kann nicht nur zur Verschl\u00fcsselung verwendet werden, sondern bildet auch die Grundlage f\u00fcr das Software Raid und den Logical Volume Manager (<a href=\"http:\/\/wiki.ubuntuusers.de\/Logical_Volume_Manager\" target=\"_blank\" rel=\"noopener noreferrer\">LVM<\/a>).<\/p>\n<p>Der Devicemapper verkn\u00fcpft vorhandene Partitionen mit virtuellen Blockger\u00e4ten. Im Betrieb, zum Beispiel beim Mounten, greift man auf die virtuellen Ger\u00e4te zu, alle Zugriffe werden dann durch den Devicemapper geleitet. Bei DM-Crypt findet an dieser Stelle die Verschl\u00fcsselung und Entschl\u00fcsselung statt. Beim Erstellen der Verkn\u00fcpfung zu einer verschl\u00fcsselten Partition wird das Passwort oder der Schl\u00fcssel angegeben. Diesen beh\u00e4lt der Devicemapper im Speicher und kann so ohne weiteren Eingriff alle Zugriffe abwickeln, bis die Partition wieder gesperrt oder das System neu gestartet wird. Es k\u00f6nnen auch mehrere Funktionen des Devicemappers kombiniert werden. So ist es m\u00f6glich, RAID-Ger\u00e4te oder einzelne Logical Volumes zu verschl\u00fcsseln, ein komplettes LVM auf einem RAID oder mehrere verschl\u00fcsselte Partitionen anzulegen etc.<\/p>\n<p>DM-Crypt ist ein Kryptographie-Modul des Device Mappers im Linux-Kernel, das die M\u00f6glichkeit biete, die im Linux-Kernel implementierten Verschl\u00fcsselungsalgorithmen zu nutzen. Mit dm-crypt k\u00f6nnen Daten verschiedener blockorientierter Ger\u00e4te mit verschiedenen Algorithmen ver- und entschl\u00fcsselt werden. In den meisten F\u00e4llen Partitionen, Festplatten oder logische Laufwerke (LVM). Dazu wird eine zus\u00e4tzliche Ebene zwischen dem Dateisystem und dem Datentr\u00e4ger aufgebaut. Daten werden so vor dem Speichern auf dem Speichermedium erst durch dm-crypt verschl\u00fcsselt und dann in verschl\u00fcsselter Form auf das Speichermedium geschrieben. Dm-crypt eignet sich so zur Festplattenverschl\u00fcsselung (Partitionen, ganze Festplatten, aber auch alle anderen blockorientierten Ger\u00e4ten wie etwa logische Laufwerke (LVM) oder loop devices). Dm-crypt unterst\u00fctzt eine Vielzahl von Verschl\u00fcsselungsalgorithmen, da es die Crypto API des Linuxkernels nutzt.<\/p>\n<p>Der Verschl\u00fcsselungsalgorithmus, die Gr\u00f6\u00dfe des Schl\u00fcssels und viele weitere Dinge, die die Verschl\u00fcsselung beeinflussen, k\u00f6nnen selber festgelegt werden. N\u00e4here Informationen zu den verf\u00fcgbaren Parametern gibt es auf der <a class=\"external text\" href=\"http:\/\/www.saout.de\/misc\/dm-crypt\/\" rel=\"nofollow\">Seite von dm-crypt<\/a>. Informationen \u00fcber die Geschwindigkeit der einzelnen Algorithmen sind <a class=\"external text\" href=\"http:\/\/web.archive.org\/web\/20070519171434\/http:\/\/www.saout.de\/tikiwiki\/tiki-index.php?page=UserPageChonhulio\" rel=\"nofollow\">hier<\/a> \u00fcbersichtlich dargestellt.<\/p>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"LUKS-Erweiterung\">LUKS-Erweiterung<\/h2>\n<p>LUKS (das Linux Unified Key Setup) ist eine Erweiterung f\u00fcr verschl\u00fcsselte Partitionen. Bei LUKS kann, im Gegensatz zu anderen Verfahren wie z. B. Cryptoloop, das Passwort oder der Schl\u00fcssel der Partition ge\u00e4ndert werden, ohne die Partition neu verschl\u00fcsseln zu m\u00fcssen. Zudem kann man mehrere gleichberechtigte Passw\u00f6rter und Schl\u00fcssel f\u00fcr eine Partition verwenden.<\/p>\n<p>Um das zu erm\u00f6glichen besitzt eine LUKS-Partition einen speziellen Anfangsbereich. W\u00e4hrend bei cryptoloop der Datenschl\u00fcssel f\u00fcr die Partition direkt aus dem Passwort abgeleitet wurde, ist er bei LUKS unabh\u00e4ngig davon. Eine LUKS-Partition verf\u00fcgt \u00fcber 8 Speicherpl\u00e4tze, in denen der Schl\u00fcssel gesichert wird &#8211; jeweils chiffriert durch ein Passwort oder einen Benutzerschl\u00fcssel. Auf diese Weise kann man zum Beispiel das Passwort \u00e4ndern, ohne den Datenschl\u00fcssel ver\u00e4ndern zu m\u00fcssen &#8211; es muss nur der Datenschl\u00fcssel, chiffriert durch das neue Passwort, im Anfangsbereich der Partition gespeichert werden (<a href=\"http:\/\/www.linux-magazin.de\/Ausgaben\/2005\/08\/Geheime-Niederschrift\/%28offset%29\/2\" target=\"_blank\" rel=\"noopener noreferrer\">ausf\u00fchrliche Infos<\/a>).<\/p>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<dl>\n<dt>\n<h2 id=\"Alternativen\">Alternativen (GUI)<\/h2>\n<\/dt>\n<\/dl>\n<dl>\n<dt><a href=\"https:\/\/mhogomchungu.github.io\/zuluCrypt\/\" target=\"_blank\" rel=\"noopener\"><strong>Zulucrypt ( Linux )<\/strong><\/a><\/dt>\n<dd>ZuluCrypt ist ein grafisches Frontend f\u00fcr die Nutzung der Verschl\u00fcsselungtechniken PLAIN dm-crypt, LUKS-, TrueCrypt- und VeraCrypt-Volumes. Dabei k\u00f6nnen sowohl einzelne Dateien als auch ganze Laufwerke und Partitionen ver- und entschl\u00fcsselt werden. Zus\u00e4tzlich k\u00f6nnen \u00c4nderungen der jeweiligen Sicherheits-Schl\u00fcssel und Backups der Header durchgef\u00fchrt werden. Mit zuluMount k\u00f6nnen verschl\u00fcsselte Volumes eingebunden werden<\/dd>\n<\/dl>\n<dl>\n<dt><a href=\"https:\/\/www.veracrypt.fr\/en\/Home.html\" target=\"_blank\" rel=\"noopener noreferrer\">VeryCrypt<\/a> (Linux \/ Windows OSX)<\/dt>\n<dd>Die Besonderheit dieser Verschl\u00fcsselungssoftware besteht darin, dass die Software auf den 3 bekanntesten Betriebssystemen (Linux, Mac, Windows) l\u00e4uft. Damit kann man verschl\u00fcsselte Partitionen oder Container unter allen Systemen verwenden.<br \/>\n<a href=\"https:\/\/de.wikipedia.org\/wiki\/Glaubhafte_Abstreitbarkeit\" target=\"_blank\" rel=\"noopener noreferrer\">Glaubhafte Abstreitbarkeit<\/a> bietet Veracrypt mit der M\u00f6glichkeit der sogenannten &#8220;Hidden Volumes&#8221; (versteckte Container). Die versteckten Container, die in dem freien und normalerweise nicht genutzten Speicherplatz innerhalb des Hauptcontainers erstellt werden, sind f\u00fcr einen au\u00dfen stehenden Betrachter nicht erkennbar. Der \u00e4u\u00dfere und der darin versteckte Container sind jeweils mit einem separaten Passwort zug\u00e4nglich. Je nachdem, welches der beiden Passw\u00f6rter eingegeben wird, wird der jeweilige Container entsperrt.<\/dd>\n<\/dl>\n<h2>Alternativen ( CLI )<\/h2>\n<dl>\n<dt>cryptoloop<\/dt>\n<dd>Dieser Mechanismus existiert schon seit mehreren Jahren. Er verwendet den loopback-Treiber des Kernels, mit dem man auch Abbilddateien von Partitionen oder CDs (zum Beispiel ISO-Images) mounten kann. Cryptsetup kann auch heute noch mit diesem Format umgehen, es ist aber inkompatibel zu LUKS.<\/dd>\n<dt>loop-aes<\/dt>\n<dd>Die loop-aes-Software existiert ebenfalls schon lange und gilt als ausgereift. Sie wird zwar nicht vom Standardkernel unterst\u00fctzt, Debian liefert aber vorgefertigte Pakete mit den Kernelmodulen sowie das <i>loop-aes-source<\/i>-Paket zum selberbauen. Zus\u00e4tzlich muss man noch das Paket <i>loop-aes-utils<\/i> installieren. Auch wenn der Name anderes vermuten l\u00e4sst, unterst\u00fctzt loop-aes nicht nur den AES-Algorithmus, sondern als weitere Verfahren Blowfish, Twofish und Serpent. loop-aes wird als Alternative f\u00fcr dm-crypt\/LUKS vom Debian-Installer angeboten.<\/dd>\n<\/dl>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a id=\"Alternativen\" href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"Partitionen und Laufwerke\">Einrichtung der Partitionen und Laufwerke<\/h2>\n<p>Der Debian Installer \/ Ubuntu Minimal\/Netzwerk Installer erlaubt es, bei Neuinstallationen das komplette System oder wahlweise einzelne Partitionen zu verschl\u00fcsseln. In der Standardeinstellung wird dabei LUKS mit dm-crypt verwendet, als Algorithmus kommt AES zum Einsatz. Der Pfad \/boot darf nicht innerhalb der verschl\u00fcsselten Laufwerke liegen und muss auf einer unverschl\u00fcsselten Partition vorliegen damit der Bootloader (z.B. Grub) den Kernel und die f\u00fcr LUKS\/dmcrypt ben\u00f6tigten Dateien laden kann. Es gibt unter anderem folgende Methoden f\u00fcr die Partitionierung:<\/p>\n<p>normale Partitionen:<\/p>\n<ul>\n<li>Vorteil: Keine weitere Komplexit\u00e4t durch LVM (\u00c4nderungen per GUI (Gparted) realisierbar).<\/li>\n<li>Nachteil: weniger flexibel gegen\u00fcber \u00c4nderungen als LVM<\/li>\n<li style=\"list-style-type: none;\">\n<ul>\n<li style=\"list-style-type: none;\"><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<table border=\"1\">\n<tbody>\n<tr>\n<td>Partition 1<\/td>\n<td>=&gt; Laufwerk 1 \/ LV 1<\/td>\n<\/tr>\n<tr>\n<td>Partition 2<\/td>\n<td>=&gt; Laufwerk 2 \/ LV 2<\/td>\n<\/tr>\n<tr>\n<td>Partition 3<\/td>\n<td>=&gt; Laufwerk 3 \/ LV 3<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>verschl\u00fcsselte Laufwerke auf LVM:<\/p>\n<ul>\n<li>Vorteil: Auf dem LVM\/ der VG k\u00f6nnen neben verschl\u00fcsselten auch unverschl\u00fcsselte Laufwerke angelegt werden<\/li>\n<li>Nachteil: Alle verschl\u00fcsselten Laufwerke m\u00fcssen einzeln entsperrt werden<\/li>\n<li style=\"list-style-type: none;\">\n<ul>\n<li style=\"list-style-type: none;\"><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<table border=\"1\">\n<tbody>\n<tr>\n<td>\n<address>\u00a0<\/address>\n<\/td>\n<td><\/td>\n<td>=&gt; LVM LV 1<\/td>\n<td>=&gt; Crypted Volume 1<\/td>\n<td><\/td>\n<td>(Passwort 1)<\/td>\n<\/tr>\n<tr>\n<td>Physical Volume<\/td>\n<td>=&gt; LVM \/ VG<\/td>\n<td>=&gt; LVM LV 2<\/td>\n<td>=&gt; Crypted Volume 2<\/td>\n<td><\/td>\n<td>(Passwort 2)<\/td>\n<\/tr>\n<tr>\n<td>(Festplatte \/ Partition)<\/td>\n<td><\/td>\n<td>=&gt; LVM LV 3<\/td>\n<td>=&gt; Clear Volume 3<\/td>\n<td><\/td>\n<td>(kein Passwort)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<p>LVM Laufwerke auf LUKS verschl\u00fcsselter Partition:<\/p>\n<ul>\n<li>Vorteil: nur eine Partition muss entsperrt werden<\/li>\n<li>Nachteil: im nun verwendeten Platz des LVMs k\u00f6nnen keine unverschl\u00fcsselten Partitionen mehr angelegt werden<\/li>\n<li style=\"list-style-type: none;\">\n<ul>\n<li style=\"list-style-type: none;\"><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<table border=\"3\">\n<tbody>\n<tr>\n<td><\/td>\n<td><\/td>\n<td><\/td>\n<td>=&gt; LVM LV 1<\/td>\n<td>(crypted via Luks DM-Crypt Passwort 1)<\/td>\n<\/tr>\n<tr>\n<td>Physical Volume<\/td>\n<td>=&gt; LUKS<\/td>\n<td>=&gt; LVM \/ VG<\/td>\n<td>=&gt; LVM LV 2<\/td>\n<td>(crypted via Luks DM-Crypt Passwort 1)<\/td>\n<\/tr>\n<tr>\n<td>(Festplatte \/ Partition)<\/td>\n<td>(Passwort\u00a0 1)<\/td>\n<td><\/td>\n<td>=&gt; LVM LV 3<\/td>\n<td>(crypted via Luks DM-Crypt Passwort 1)<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<div class=\"section_2\">\n<address>\u00a0<\/address>\n<address>\u00a0<\/address>\n<address id=\"Physical-Volume\">Physical Volume:\u00a0 Ein <strong>Physical Volume<\/strong> (PV) ist der eigentliche Datenspeicher eines LVMs. Ein PV kann eine<\/address>\n<address>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Partition oder ein ganzes Laufwerk sein. Es ist auch m\u00f6glich, sogenannte &#8220;Loop-Dateien&#8221;<\/address>\n<address>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 zu verwenden.<\/address>\n<address>\u00a0<\/address>\n<\/div>\n<address id=\"Volume-Group\">Volume Group:\u00a0 Eine <strong>Volume Group<\/strong> (VG) ist eine Art Container f\u00fcr mindestens ein PV.<\/address>\n<address>\u00a0<\/address>\n<div class=\"section_2\">\n<address id=\"Logical-Volume\">Logical Volume\u00a0 :\u00a0 Ein <strong>Logical Volume<\/strong> (LV oder auch Volume) ist im LVM Kontext f\u00fcr den Anwender eine Art<\/address>\n<address>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 Partition innerhalb einer Volume Group. Es ist nicht m\u00f6glich, Logical Volumes au\u00dferhalb einer<\/address>\n<address>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0 VG zu erstellen. Das LV kann wie eine normale Partition verwendet werden, d.h. es k\u00f6nnen<\/address>\n<address>\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0 \u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 \u00a0\u00a0\u00a0 Dateisysteme darauf angelegt werden und es kann gemounted werden.<\/address>\n<\/div>\n<address>\n<hr \/>\n<\/address>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"Installation&quot;\" style=\"text-align: center;\">Installation<\/h2>\n<h2 id=\"Installationsmedium\">Installationsmedium<\/h2>\n<p>F\u00fcr eine Installation von Debian 12 auf Basis des Logical-Volume-Managers mit manuell konfigurierbaren Partitionen ist der CLI-Installer, da aktuell nur dieser Installer die M\u00f6glichkeit bietet, die LVM-Partitionen frei zu konfigurieren. Der CLI-Installer f\u00fcr Debian 12 ist \u00fcber das CD\/Image der Netzwerkinstallation verf\u00fcgbar und enth\u00e4lt auch nur die f\u00fcr den CLI-Installer ben\u00f6tigten Dateien. Alle weiteren Softwarepakete werden aus dem Internet nachgeladen.<\/p>\n<p>Das installierte System ist ein CLI-Basis-System ohne grafische Oberfl\u00e4che. Am Ende der Installation wird ein Dialog zur Installation der f\u00fcr Debian 12 verf\u00fcgbaren Desktopumgebungen geladen, um gegebenenfalls eine vollst\u00e4ndige Desktopumgebung zu installieren. Somit ist das Netzwerkinstallationsimage als Basis-Image f\u00fcr alle Desktopumgebungen zu verstehen. Dies erfordert allerdings mindestens eine DSL-Anbindung an das Internet, da 1-3 Gigabyte w\u00e4hrend der Installation geladen werden. Im Gegensatz zur Installation mit Desktop-CDs\/Images werden bei der oben genannten Installation die aktuellen Pakete installiert, und ein nachtr\u00e4gliches Aktualisieren des Betriebssystems nach der Installation entf\u00e4llt (laufende Softwareupdates werden nat\u00fcrlich weiterhin ins System eingepflegt).<\/p>\n<p>Das Image\/Iso Datei wird auf CD gebrannt oder daraus ein bootf\u00e4higer USB Installationstick erstellt (Windows \/ <a href=\"http:\/\/wiki.ubuntuusers.de\/Live-USB\" target=\"_blank\" rel=\"noopener noreferrer\">Linux)<\/a><\/p>\n<hr \/>\n<p style=\"text-align: center;\">\u00a0<strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"Einrichtung der Partitionen\">Einrichtung der Partitionen<\/h2>\n<p>Eine nachtr\u00e4gliche Erg\u00e4nzung oder \u00c4nderung der Partitionsparameter aus dem laufenden System ist nur m\u00f6glich, wenn die zu bearbeitende Partition nicht eingeh\u00e4ngt ist. Die Partitionstabelle (MBR\/GPT) dagegen kann nicht ge\u00e4ndert werden, ohne vollst\u00e4ndigen Datenverlust aller auf der Festplatte befindlichen Daten. Daher erfordert die Installation auf einer verschl\u00fcsselten Partition eine etwas andere Vorgehensweise (s. <a href=\"#Installation\">Installation)<\/a>. Eine mit DM-Crypt verschl\u00fcsselte Partition wird von nahezu allen Linux System erkannt und kann, bis auf die Eingabe des Passwortes, genutzt werden wie normale Wechseldatentr\u00e4ger. Es gibt versch. Programme zur Verwaltung der Partitionen wie z.B. <a href=\"http:\/\/wiki.ubuntuusers.de\/GParted\" target=\"_blank\" rel=\"noopener noreferrer\">Gparted<\/a>*\u00b3 und die <a href=\"http:\/\/wiki.ubuntuusers.de\/Laufwerksverwaltung\" target=\"_blank\" rel=\"noopener noreferrer\">Gnome Laufwerksverwaltung<\/a>*\u00b3 oder rein Terminal-basiert wie z.B. <a href=\"http:\/\/wiki.ubuntuusers.de\/fdisk\" target=\"_blank\" rel=\"noopener noreferrer\">fdisk\/cfdisk<\/a>*\u00b9 oder <a href=\"http:\/\/wiki.ubuntuusers.de\/gdisk\" target=\"_blank\" rel=\"noopener noreferrer\">gdisk\/gfdisk<\/a>*\u00b3 (s. <a href=\"http:\/\/wiki.ubuntuusers.de\/Partitionierung\" target=\"_blank\" rel=\"noopener noreferrer\">Partitionierung<\/a>).<\/p>\n<address>*\u00b9 nur <a href=\"http:\/\/wiki.ubuntuusers.de\/Partitionierung\/Grundlagen#MSDOS-Schema\" target=\"_blank\" rel=\"noopener noreferrer\">MBR<\/a>, kein <a href=\"http:\/\/wiki.ubuntuusers.de\/Partitionierung\/Grundlagen#GPT-Schema\" target=\"_blank\" rel=\"noopener noreferrer\">GPT<\/a> | *\u00b2 nur <a href=\"http:\/\/wiki.ubuntuusers.de\/Partitionierung\/Grundlagen#GPT-Schema\" target=\"_blank\" rel=\"noopener noreferrer\">GPT<\/a>, kein <a href=\"http:\/\/wiki.ubuntuusers.de\/Partitionierung\/Grundlagen#MSDOS-Schema\" target=\"_blank\" rel=\"noopener noreferrer\">MBR<\/a> | *\u00b3 <a href=\"http:\/\/wiki.ubuntuusers.de\/Partitionierung\/Grundlagen#MSDOS-Schema\" target=\"_blank\" rel=\"noopener noreferrer\">MBR<\/a>\u00a0 und <a href=\"http:\/\/wiki.ubuntuusers.de\/Partitionierung\/Grundlagen#GPT-Schema\" target=\"_blank\" rel=\"noopener noreferrer\">GPT<\/a><\/address>\n<address>\n<hr \/>\n<\/address>\n<p style=\"text-align: center;\">\u00a0<strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"Einrichtung des LVM\">Einrichtung des LVM<\/h2>\n<p>Der LVM bietet die M\u00f6glichkeit, mehrere Partitionen logisch zusammenzufassen (Volume Group) und in diesem logischen Verbund neue &#8220;logische Partitionen&#8221; (Logical Volume) anzulegen. Der Volume Group k\u00f6nnen dynamisch weitere Ger\u00e4te sowie freier Speicherplatz hinzugef\u00fcgt werden. Dadurch erreicht man eine h\u00f6here Flexibilit\u00e4t als mit einem klassischen Partitionierungsansatz. Dies ist vor allem interessant f\u00fcr verschl\u00fcsselte Dateisysteme, bei denen eine verschl\u00fcsselte Partition, die nur einen Schl\u00fcssel ben\u00f6tigt, verschiedene weitere Partition beinhaltet oder f\u00fcr Server, bei denen dynamisch wachsende Datenbest\u00e4nde ber\u00fccksichtigt werden m\u00fcssen. F\u00fcr die Verwaltung des LVM gibt es grafische Programme wie die <a href=\"http:\/\/wiki.ubuntuusers.de\/Logical_Volume_Manager#GNOME\" target=\"_blank\" rel=\"noopener noreferrer\">Verwaltung f\u00fcr logische Medien<\/a> oder <a href=\"http:\/\/wiki.ubuntuusers.de\/Logical_Volume_Manager#Manuell\" target=\"_blank\" rel=\"noopener noreferrer\">Terminal basierte Programme<\/a> (s.a. <a href=\"https:\/\/www.thomas-krenn.com\/de\/wiki\/LVM_Grundkonfiguration\" target=\"_blank\" rel=\"noopener noreferrer\">www.thomas-krenn.com)<\/a><\/p>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"Installation auf LUKS in LVM\">OS Installation auf LUKS in LVM<\/h2>\n<p>Die Installation auf <strong>ein<\/strong> verschl\u00fcsseltes Laufwerk mit <strong>einem<\/strong> Passwort ist z.Z. am einfachsten \u00fcber den Logic Volume Manager zu realisieren. Hierzu wird eine verschl\u00fcsselte Partition erstellt und in dieser wird statt des Dateisystems dann eine weitere Schicht &#8211; der LVM &#8211; eingegliedert. Im LVM wiederum k\u00f6nnen dann verschiedene Partitionen angelegt werden, die nach der Entschl\u00fcsslung \/ Passworteingabe wie gewohnt genutzt werden k\u00f6nnen. Die Installation des Betriebssystems auf eine verschl\u00fcsselte Partition erfordert eine nicht verschl\u00fcsselte Bootpartition, da auf dieser die ben\u00f6tigten Dateien zum Entschl\u00fcsseln der LUKS Partition liegen.<\/p>\n<ol>\n<li>Booten der o.g. Netinstall Images via CD oder USB-Stick<\/li>\n<li>Erstellen einer Bootpartition<\/li>\n<li>Erstellen einer verschl\u00fcsselten LUKS Partition f\u00fcr LVM\u00a0\u00a0 \/\/ ** LUKS Partition muss erst initialisiert werden, um LVM in LUKS zu erstellen<\/li>\n<li>Verschl\u00fcsselte Partition f\u00fcr LVM vorbereiten (Verschl\u00fcsselung initialisieren)<\/li>\n<li>LVM Partitionen erstellen<\/li>\n<\/ol>\n<hr \/>\n<h2>Entfernte Schl\u00fcsseleingabe, um Serverpartition zu entsperren<\/h2>\n<p>Es gibt mit dem Programm Dropbear die M\u00f6glichkeit einen SSH-Server in die initrd Dateien, welche unter \/boot liegen, zu implementieren. Dieser SSH Server wird noch VOR dem dm-crypt modul geladen. Somit ist die Systempartition via SSH entsperrbar und der Server kann den Bootvorgang nach dem Entsperren wie gewohnt fortsetzten. (<a href=\"https:\/\/www.thomas-krenn.com\/de\/wiki\/Voll-verschl%C3%BCsseltes-System_via_SSH_freischalten\" target=\"_blank\" rel=\"noopener noreferrer\">Anleitung<\/a>)<\/p>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"DM-Crypt Container - Partition\">DM-Crypt Container \/ Partition manuell anlegen<\/h2>\n<p>Das manuelle Anlegen eines verschl\u00fcsselten Containers wird im Folgenden beschrieben:<\/p>\n<p>Mit einem der folgenden Befehle wird ein 1 GiB (1024 MiB) gro\u00dfer Container mit dem Namen crypt_container_01 erzeugt:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">dd if=\/dev\/zero of=crypt_container_01 bs=1M count=1024     # erstelle Containerdatei mit ...0000...<\/pre>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">dd if=\/dev\/urandom of=crypt_container_01 bs=1M count=1024  # erstelle Containerdatei mit ...Zufall...<\/pre>\n<p class=\"\">** Das Erstellen des Containers mit dem Wert \u20260000\u2026 geht wesentlich schneller als mit durch Zufall generierte Werte<br \/>\n** bs Parameter :\u00a0 kB\u00a0 =1000 | K =1024 | MB =1000*1000 | M =1024*1024 | xB = 10\u00b3 = 1000|\u00a0 xM = 2\u00b9<sup>0<\/sup> = 1024<br \/>\n** Image Gr\u00f6\u00dfe = bs x count =&gt; 1M x 1024(0) = 1(0) GiB | 1M x 3072(0) = 3(0) GiB | 1M x 5120(0) = 5(0) GiB<\/p>\n<p>Die Container werden jetzt \u00fcber ein Loop-Device eingeh\u00e4ngt. Dieser Befehl gibt zun\u00e4chst ein freies Loop-Device zur\u00fcck :<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">losetup -f<\/pre>\n<p>Durch das Loop-Device kann man die Datei wie eine normale Partition\/Festplatte ansprechen und einh\u00e4ngen:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">losetup \/dev\/loop0 crypt_container_01<\/pre>\n<p>*\u00a0 \/dev\/loop0 muss gegebenenfalls durch ein anderes freies Device ersetzt werden.<\/p>\n<p>Nachdem der Container \/ die Partition erstellt wurde, wird diese\/r nun mit cryptsetup initialisiert, der Algorithmus (siehe Manpage von cryptsetup) sowie das Passwort festlegt: folgende Abfrage mit YES beantworten ( GROSSBUCHSTABEN ! )<\/p>\n<ul>\n<li>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">cryptsetup -c aes-xts-plain -y -s 512 luksFormat \/dev\/loop0   # F\u00fcr eingeh\u00e4ngte Containerdatei an \/dev\/loop0<\/pre>\n<\/li>\n<li>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">cryptsetup -c aes-xts-plain -y -s 512 luksFormat \/dev\/sdX1    # F\u00fcr eingeh\u00e4ngte Partition an \/dev\/sdx1<\/pre>\n<\/li>\n<\/ul>\n<p>Jetzt kann man den Container mit cryptsetup \u00f6ffnen. Der Parameter <strong>crypt_container_01<\/strong> steht f\u00fcr den Namen, unter dem das Ger\u00e4t unter \/dev\/mapper\/ eingeh\u00e4ngt werden soll. Wenn mehrere verschl\u00fcsselte Container verwendet werden, ist darauf zu achten, jedem Container eine eindeutige Bezeichnung zuzuweisen.<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true \">cryptsetup luksOpen \/dev\/loop0 crypt_container_01\r\n<\/pre>\n<p>Das Erstellen, Verschl\u00fcsseln und Einh\u00e4ngen ist damit abgeschlossen und der Container muss jetzt nur noch mit einem Dateisystem formatiert werden (z.B. das ext4 Dateisystem)<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">mkfs.ext4 \/dev\/mapper\/crypt_container_01<\/pre>\n<p>Abschlie\u00dfend wird der LUKS Container geschlossen und ausgeh\u00e4ngt<\/p>\n<pre class=\"lang:default decode:true\">cryptsetup close crypt_container_01\r\nlosetup -d \/dev\/loop0<\/pre>\n<address>alternativ kann zum Ein- und Aush\u00e4ngen der Containerdatein der Befehl mount.crypt aus dem Programm libpam-mount verwendet werden<\/address>\n<address>\n<hr \/>\n<\/address>\n<p style=\"text-align: center;\">\u00a0<strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 style=\"text-align: center;\">Sonstiges<\/h2>\n<h2 id=\"Backups\">Backups<\/h2>\n<p>Header sichern<br \/>\nUm Informationen \u00fcber die Partitionierung innerhalb des Containers und der Keyslots zu sichern, empfiehlt es sich, ein Backup vom LUKS-Header (au\u00dferhalb des verschl\u00fcsselten Containers) anzulegen. Wird dieses Backup entwendet, ist ein Zugriff auf den verschl\u00fcsselten Container trotzdem nur mit den zum Zeitpunkt des Backups erstellen Schl\u00fcsselinformationen m\u00f6glich.\u00a0 Ein gesicherter Header h\u00e4ngt von den Passw\u00f6rtern ab, die gerade zu dem Zeitpunkt der Sicherung aktiv sind. Entsprechend ist es empfehlenswert, die Sicherung des Headers unter Verschluss zu halten und nach jeder \u00c4nderung am Ger\u00e4t unmittelbar zu aktualisieren.<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sudo cryptsetup luksHeaderBackup \/dev\/loop0 --header-backup-file BACKUP-DATEI<\/pre>\n<p>Zur Wiederherstellung wird folgender Befehl verwendet:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sudo cryptsetup luksHeaderRestore \/dev\/loop0 --header-backup-file BACKUP-DATEI<\/pre>\n<p>Nur bei der korrekten Angabe der Ger\u00e4tedatei (in diesem Fall \/dev\/loop0) wird eine ca 2 MB gro\u00dfe datei erzeugt.<\/p>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"Partition manuell einh\u00e4ngen\">LUKS Partition manuell einh\u00e4ngen<\/h2>\n<p>Die Partition kann nach Eingabe des Schl\u00fcssels mittels cryptsetup ge\u00f6ffnet werden. Dabei wird die entsperrte Partition als Device Mapper Ger\u00e4tedatei unter <code>\/dev\/mapper<\/code> bereitgestellt.<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">speefak:~# sudo cryptsetup luksOpen \/dev\/sda2 sda2_crypt\r\nEnter LUKS passphrase:\r\nkey slot 0 unlocked.\r\nCommand successful\r\nspeefak:~# ls \/dev\/mapper\r\ncontrol sda2_crypt<\/pre>\n<p>Die Partition ist somit entschl\u00fcsselt und \u00fcber den Device Mapper als Ger\u00e4tedatei im System verf\u00fcgbar (\/dev\/mapper\/sda2_crypt ). Das Mounten erfolgt nun in typischer Linux Syntax:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">speefak:~# sudo mount \/dev\/mapper\/sda2_crypt \/mnt\r\nspeefak:~# sudo mount | grep sda2\r\n\/dev\/mapper\/sda2_crypt on \/mnt type ext4 (rw)<\/pre>\n<p>Die Partition ist damit entsperrt. Alle Zugriffe auf <code>\/dev\/mapper\/sda2_crypt<\/code> laufen nun durch den Device Mapper. Erfolgt ein Schreibzugriff auf sda2_crypt so werden die Daten erst durch LUKS verschl\u00fcsselt, bevor die Speicherung auf dem Device Mapper Ger\u00e4t (\/dev\/mapper\/sda2_crypt) erfolgt<\/p>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"LVM Partitionen manuell einh\u00e4ngen\">LVM Partitionen manuell einh\u00e4ngen<\/h2>\n<p>Das Mounten von LVM Partitionen innerhalb eines LUKS verschl\u00fcsselten Ger\u00e4tes funktioniert fast genau so wie das Mounten eines normalen LUKS Device. Der LVM ist neben dem Device Mapper eine weitere Instanz zwischen Daten und dem Dateisystem auf der Festplatte. Beim Entsperren der LUKS Partition wird der LVM direkt angeben:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">speefak:~# sudo cryptsetup luksOpen \/dev\/sda2 lvm\r\nEnter LUKS passphrase:\r\nkey slot 0 unlocked.\r\nCommand successful\r\nspeefak:~# lsblk\r\nsda                   8:0    0 232,9G  0 disk  \r\n\u251c\u2500sda1                8:1    0   512M  0 part  \/boot\r\n\u251c\u2500sda2                8:2    0   180G  0 part  \r\n\u2502 \u2514\u2500sda2_crypt      254:0    0   180G  0 crypt \r\n\u2502   \u251c\u2500System-swap   254:1    0   3,7G  0 lvm   [SWAP]\r\n\u2502   \u251c\u2500System-system 254:2    0    14G  0 lvm   \/\r\n\u2502   \u2514\u2500System-home   254:3    0 162,3G  0 lvm   \/home\r\n\u2514\u2500sda3                8:3    0  52,4G  0 part<\/pre>\n<p>Jetzt k\u00f6nnen die LVM Partionen innerhalb des LUKS Device wie gewohnt eingeh\u00e4ngt werden :<\/p>\n<pre class=\"lang:sh decode:true\">speefak:~# sudo mount \/dev\/mapper\/System-home \/mnt\r\nspeefak:~# ls \/mnt\r\nbin   dev  home        initrd.img.old  lib32  lost+found  mnt  proc  run   srv  tmp  var      vmlinuz.old\r\nboot  etc  initrd.img  lib             lib64  media       opt  root  sbin  sys  usr  vmlinuz<\/pre>\n<p>Nach Abschluss aller Dateioperationen wird die Partition dann ausgeh\u00e4ngt und anschlie\u00dfend wieder gesperrt :<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">speefak:~# umount \/mnt\r\nspeefak:~# cryptsetup luksClose \/dev\/mapper\/sda2_crypt\r\nspeefak:~# ls \/dev\/mapper\r\ncontrol<\/pre>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2>Ger\u00e4te beim Systemstart entsperren<\/h2>\n<p id=\"Einbinden automatisieren - crypttab\">Anstelle der manuellen Aktivierung und Deaktivierung von verschl\u00fcsselten Partitionen kann Cryptsetup eine automatische Entsperrung beim Systemstart erm\u00f6glichen. Hierzu gen\u00fcgt das Eintragen der entsprechenden Informationen in der Datei \/etc\/crypttab.<\/p>\n<ul>\n<li>\n<ul>\n<li>Der Name der Device-Mapper-Verkn\u00fcpfung ( sda3_crypt )<\/li>\n<li>Der Name der verschl\u00fcsselten Partition, hier ( sda3_crypt oder UUID=3de8fbf9-3f42-497b-828b-768bc9b46d3d )<\/li>\n<li>Der Pfad zu einer Schl\u00fcsseldatei, oder bei Verwendung eines Passwortes stattdessen <code>none<\/code><\/li>\n<li>Angaben \u00fcber die verwendete Verschl\u00fcsselung &#8211; da diese Informationen bei LUKS im Anfangsbereich der Partition gespeichert werden in diesem Fall einfach nur <code>luks<\/code><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Die komplette Zeile f\u00fcr das oben genannte Beispiel w\u00fcrde also so aussehen:<\/p>\n<pre class=\"theme:dark-terminal lang:zsh decode:true\"># &lt;target name&gt;    &lt;source device&gt;                             &lt;key file&gt;      &lt;options&gt;\r\nsdb3_crypt         UUID=3de8fbf9-3f42-497b-828b-768bc9b46d3d   none            luks,discard<\/pre>\n<p>Beim n\u00e4chsten Neustart entsperrt Cryptsetup automatisch die Partition und \u00f6ffnet eine Eingabeprompt f\u00fcr Passwort. Um das automatische Einh\u00e4ngen beim Systemstart zu aktivieren, gen\u00fcgt ein Eintrag in der \/etc\/fstab, zum Beispiel:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">\/dev\/mapper\/hda3_crypt    \/mnt    ext3    auto,defaults    0    0<\/pre>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"Datei statt Passwort als Schl\u00fcssel\">Luks Partitionen mit Datei statt Passwort als Schl\u00fcssel entsperren (no root)<\/h2>\n<p>Alternativ kann eine Datei, z. B. auf einem USB-Stick, als Schl\u00fcssel verwendet werden. Im Gegensatz zur Verwendung von Passw\u00f6rtern, die bei jedem Hochfahren f\u00fcr jede verschl\u00fcsselte Partition eingegeben werden m\u00fcssen, entf\u00e4llt bei Schl\u00fcsseldateien diese Eingabe. Es ist lediglich erforderlich sicherzustellen, dass auf den Schl\u00fcssel zugegriffen werden kann, beispielsweise indem der USB-Stick eingesteckt wird.<\/p>\n<div class=\"flex flex-grow flex-col max-w-full\">\n<div class=\"min-h-[20px] text-message flex flex-col items-start gap-3 whitespace-pre-wrap break-words [.text-message+&amp;]:mt-5 overflow-x-auto\" data-message-author-role=\"assistant\" data-message-id=\"c80ff798-2cad-4690-a246-e6127d9ca53a\">\n<div class=\"markdown prose w-full break-words dark:prose-invert light\">\n<p>F\u00fcr eine LUKS-Partition k\u00f6nnen bis zu acht Passw\u00f6rter oder Schl\u00fcssel genutzt werden. Bestehende Partitionen, erstellt durch den Debian-Installer oder luksformat, lassen sich nachtr\u00e4glich mit einer Schl\u00fcsseldatei versehen. Die erforderlichen Schritte werden mit cryptsetup ausgef\u00fchrt:<\/p>\n<ol>\n<li>Zuerst muss eine angemessene Schl\u00fcsseldatei erstellt werden, etwa eine vier Kilobyte gro\u00dfe Datei.&#8221;<\/li>\n<\/ol>\n<\/div>\n<\/div>\n<\/div>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">sirius:~# dd if=\/dev\/urandom of=\/media\/usb\/key bs=4k count=1\r\n1+0 Datens\u00e4tze ein\r\n1+0 Datens\u00e4tze aus\r\n4096 Bytes (4,1 kB) kopiert, 0,0018383 Sekunden, 2,2 MB\/s<\/pre>\n<p>Als N\u00e4chstes muss der Schl\u00fcssel der LUKS-Partition hinzugef\u00fcgt werden. Dabei wird das bestehende Passwort eingegeben und damit dann der Datenschl\u00fcssel dechiffriert. Dann wird er durch die Schl\u00fcsseldatei neu chiffriert und in einer freien Speicherstelle gesichert:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">cryptsetup luksAddKey \/dev\/hda3 \/media\/usb\/key\r\nEnter any LUKS passphrase:\r\nkey slot 0 unlocked.\r\nCommand successful<\/pre>\n<p>Nun kann testweise die Partition mit dem neuen Schl\u00fcssel statt des Passwortes entsperrt werden:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">speefak:~# cryptsetup luksOpen \/dev\/hda3 hda3_crypt --key-file \/media\/usb\/key\r\nkey slot 1 unlocked.\r\nCommand successful<\/pre>\n<p>Damit kann die Partition \u00e4hnlich wie mit einem Passwort manuell entsperrt werden. Dieser Vorgang l\u00e4sst sich auch \u00fcber die crypttab automatisieren. Dazu wird in der Datei \/etc\/crypttab unter der Option key file der Pfad zur Schl\u00fcsseldatei angeben. Aus dem vorherigen Beispiel (Ger\u00e4te beim Systemstart entsperren) wird somit:<\/p>\n<pre class=\"theme:dark-terminal lang:zsh decode:true\"># &lt;target name&gt;    &lt;source device&gt;                               &lt;key file&gt;           &lt;options&gt;\r\nsdb3_crypt         UUID=3de8fbf9-3f42-497b-828b-768bc9b46d3d     \/media\/usb\/key       luks,discard<\/pre>\n<p>Cryptsetup muss nun noch angewiesen werden, das Medium mit dem Schl\u00fcssel vor dem Verarbeiten der crypttab zu mounten. Hierf\u00fcr ist ein Eintrag f\u00fcr das Medium in der \/etc\/fstab und der zugeh\u00f6rige Mountpunkt in \/etc\/default\/cryptdisks erforderlich<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">CRYPTDISKS_MOUNT=\"\/media\/usb\"<\/pre>\n<p>Nach dem Entsperren aller verschl\u00fcsselten Partitionen wird das Medium automatisch wieder ausgeh\u00e4ngt. Zur Sicherheit kann nun noch die initial ram disk neu gebaut werden:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">update-initramfs -u<\/pre>\n<p>Das Passwort kann auch weiterhin als Ersatz beibehalten werden. Ist der USB-Stick mit dem Schl\u00fcssel eingesteckt, f\u00e4hrt das System ohne Benutzereingaben hoch und entsperrt alle in der crypttab eingetragenen Partitionen selbstst\u00e4ndig. Diese Konfiguration funktioniert f\u00fcr alle Partitionen au\u00dfer der Root-Partition.<\/p>\n<hr \/>\n<p style=\"text-align: center;\"><strong><em><a href=\"#overview\">Zur\u00fcck zur \u00dcbersicht<\/a><\/em><\/strong><\/p>\n<hr \/>\n<h2 id=\"Datei statt Passwort als Schl\u00fcssel\">Luks Partitionen mit Datei statt Passwort als Schl\u00fcssel entsperren (root)<\/h2>\n<p>Da auf der root Partition die zum Entsperren notwendigen Programme liegen, sind hier einige weitere Schritte notwendig.<\/p>\n<p>Es ist wichtig sicherzustellen, dass die initrd die erforderlichen Treiber f\u00fcr den USB-Stick enth\u00e4lt. Das automatische Mounten des Sticks \u00fcber CRYPTDISKS_MOUNT und die fstab nicht, da die daf\u00fcr ben\u00f6tigten Informationen nicht in der initrd vorhanden sind.<\/p>\n<p>Es existiert jedoch eine Alternative. In der crypttab kann einem Laufwerk ein Keyscript zugewiesen werden, das den Schl\u00fcssel beschafft und ausgibt. Dieses Skript wird automatisch in die initrd \u00fcbernommen, sofern es in der crypttab eingetragen ist. Es ist daf\u00fcr verantwortlich, alle Schritte zum Erlangen des Schl\u00fcssels durchzuf\u00fchren, einschlie\u00dflich dem Laden der Treiber f\u00fcr den USB-Stick, dem Anlegen eines Mountpunkts, dem Mounten, der Ausgabe des Schl\u00fcssels und dem Aush\u00e4ngen des USB-Sticks. Das Skript wird au\u00dferhalb der initrd im laufenden Betrieb nicht ben\u00f6tigt und kann beispielsweise im Verzeichnis \/root abgelegt werden. Hier ist ein Beispiel f\u00fcr ein solches Skript<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">#!\/bin\/sh\r\nmodprobe usb-storage 1&gt;&amp;2 #Kernelmodul f\u00fcr den USB-Stick laden\r\nsleep 5                   #5 Sekunden warten damit der Stick bereit ist\r\nmkdir \/usb 1&gt;&amp;2           #Mountpunkt anlegen\r\nmount -t vfat -o ro,umask=077 \/dev\/sda1 \/usb 1&gt;&amp;2 #Stick mounten\r\ncat \/usb\/key              #Schl\u00fcssel ausgeben\r\numount \/usb 1&gt;&amp;2          #USB-Stick aush\u00e4ngen<\/pre>\n<p>Da cryptsetup den Schl\u00fcssel in der Standardausgabe des Skriptes erwartet, wird die Ausgabe aller anderen Programmaufrufe im Skript in die Fehlerausgabe umgelenkt (1&gt;&amp;2). Au\u00dferdem muss das Skript ausf\u00fchrbar sein.<\/p>\n<p>Au\u00dferdem muss noch sichergestellt werden, dass die initrd alle n\u00f6tigen Treiber enth\u00e4lt. update-initramfs f\u00fcgt automatisch die Module f\u00fcr USB-Speicher hinzu. Die Module f\u00fcr das auf vielen USB-Sticks verwendete FAT-Dateisystem muss man aber ausdr\u00fccklich anfordern. Dazu werden in der Datei <i>\/etc\/initramfs-tools\/modules<\/i> folgende Zeilen hinzugef\u00fcgt:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">nls_cp437\r\nnls_iso8859_1\r\nvfat<\/pre>\n<p>Als vorletztes muss nun die <i>crypttab<\/i> angepasst werden:<\/p>\n<pre class=\"theme:dark-terminal lang:zsh decode:true\"># &lt;target name&gt;    &lt;source device&gt;                             &lt;key file&gt;      &lt;options&gt;\r\nsdb3_crypt         UUID=3de8fbf9-3f42-497b-828b-768bc9b46d3d   none            luks,keyscript=\/root\/keyscript<\/pre>\n<p>Nun wird eine Kopie der alten initrd in \/boot erstellt. Diese wird als Ersatz ben\u00f6tigt, falls das Entsperren der Root-Partition nicht klappt. Dann kann n\u00e4mlich das System nicht hochgefahren werden. Startet man neu und verlangt von grub, statt der neuen die alte initrd zu verwenden, kann man die Root-Partition wieder mit dem Passwort entsperren und nach dem Hochfahren den Fehler beheben. Das geht wesentlich schneller als die Benutzung einer Live-CD f\u00fcr diesen Zweck. Als Letztes wird dann eine neue initrd erstellt:<\/p>\n<pre class=\"theme:dark-terminal lang:sh decode:true\">update-initramfs -u\r\nupdate-initramfs: Generating \/boot\/initrd.img-6.1.0-18-amd64<\/pre>\n<p>Nach einem Neustart wird cryptsetup jetzt versuchen, den Schl\u00fcssel vom USB-Stick einzulesen und damit die Root-Partition zu entsperren. Nachdem das erfolgt ist, wird von der initrd zur Root-Partition gewechselt und das System wie gewohnt hochgefahren.<\/p>\n<hr \/>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-2821 alignleft\" src=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-content\/uploads\/2014\/08\/CC_BY_NC_SA.png\" alt=\"CC_BY_NC_SA\" width=\"65\" height=\"23\" \/>by Speefak | <a href=\"http:\/\/www.andreas-janssen.de\/cryptodisk.html\" target=\"_blank\" rel=\"noopener noreferrer\">www.andreas-janssen.de<\/a>\u00a0| <a href=\"http:\/\/linuxwiki.de\/cryptsetup\" target=\"_blank\" rel=\"noopener noreferrer\">linuxwiki.de<\/a>\u00a0| <a href=\"http:\/\/wiki.ubuntuusers.de\/LUKS\" target=\"_blank\" rel=\"noopener noreferrer\">wiki.ubuntuusers.de<\/a> | <a href=\"https:\/\/www.linuxjournal.com\/content\/review-gui-lvm-tools\" target=\"_blank\" rel=\"noopener\">LVM Verwalten<\/a>\u00a0| <a href=\"http:\/\/www.mandalka.name\/usbcryptformat\/\" target=\"_blank\" rel=\"noopener noreferrer\">USB_CRYPT<\/a>\u00a0| <a href=\"http:\/\/www.monoplan.de\/lvm.html\" target=\"_blank\" rel=\"noopener noreferrer\">LVM Administration<\/a> | <a href=\"https:\/\/wiki.gentoo.org\/wiki\/Dm-crypt_full_disk_encryption\" target=\"_blank\" rel=\"noopener noreferrer\">wiki.gentoo.org\u00a0<\/a><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; SICHERHEITSL\u00dcCKE \u00a0Grundlagen Installation Sonstiges Verwendungszweck Installationsmedium Backups Voraussetzungen Einrichtung der Partitionen Partition manuell einh\u00e4ngen Devicemapper &#8211; DM-Crypt Einrichtung des LVM LVM Partitionen manuell einh\u00e4ngen LUKS-Erweiterung OS Installation auf LUKS in LVM Grub reparieren \/ neu installieren (LUKS) Alternativen LVM GUI ( Partitionmanager ) Partitionen und Laufwerke DM-Crypt Container \/ Partition ZuluCrypt ( GUI \/ [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,50,7,24,26],"tags":[],"class_list":["post-2827","post","type-post","status-publish","format-standard","hentry","category-anleitungen","category-encryption","category-grundlagen","category-it-syntax","category-linux"],"rttpg_featured_image_url":null,"rttpg_author":{"display_name":"speefak","author_link":"https:\/\/speefak.spdns.de\/oss_lifestyle\/author\/speefak_oss\/"},"rttpg_comment":0,"rttpg_category":"<a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/anleitungen\/\" rel=\"category tag\">Anleitungen<\/a> <a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/encryption\/\" rel=\"category tag\">Encryption<\/a> <a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/grundlagen\/\" rel=\"category tag\">Grundlagen<\/a> <a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/it-syntax\/\" rel=\"category tag\">IT Syntax<\/a> <a href=\"https:\/\/speefak.spdns.de\/oss_lifestyle\/category\/linux\/\" rel=\"category tag\">Linux<\/a>","rttpg_excerpt":"&nbsp; SICHERHEITSL\u00dcCKE \u00a0Grundlagen Installation Sonstiges Verwendungszweck Installationsmedium Backups Voraussetzungen Einrichtung der Partitionen Partition manuell einh\u00e4ngen Devicemapper &#8211; DM-Crypt Einrichtung des LVM LVM Partitionen manuell einh\u00e4ngen LUKS-Erweiterung OS Installation auf LUKS in LVM Grub reparieren \/ neu installieren (LUKS) Alternativen LVM GUI ( Partitionmanager ) Partitionen und Laufwerke DM-Crypt Container \/ Partition ZuluCrypt ( GUI \/&hellip;","_links":{"self":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/posts\/2827","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/comments?post=2827"}],"version-history":[{"count":0,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/posts\/2827\/revisions"}],"wp:attachment":[{"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/media?parent=2827"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/categories?post=2827"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/speefak.spdns.de\/oss_lifestyle\/wp-json\/wp\/v2\/tags?post=2827"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}