LUKS (Linux Unified Key Setup) ermöglicht die Verschlüsselung von Datenträgern in Linux. Dabei werden mehrere Schlüssel unterstützt, wodurch unterschiedliche Benutzer Zugang zu demselben verschlüsselten Volume haben können. Der Beitrag zeigt Möglichkeiten und Praxis.
Der Beitrag erläutert, wie Linux Unified Key Setup (LUKS) die Daten auf Festplatten für Unbefugte unzugänglich macht.
Die Festplattenverschlüsselung unter Linux mit Linux Unified Key Setup (LUKS) gewährleistet die Sicherheit sensibler Daten, indem sie die Festplatteninhalte unzugänglich für unbefugte Dritte macht. Die Einrichtung erfolgt in mehreren Schritten.
Ablauf bei der Verschlüsselung mit LUKS
Zunächst wird die neue Festplatte in das System integriert und auf ihre Funktionsfähigkeit geprüft. Dies geschieht mithilfe von SMART-Tools, die sicherstellen, dass keine physischen Defekte vorliegen. Anschließend wird eine Partitionstabelle erstellt, meist im GPT-Format, gefolgt von der Anlage einer oder mehrerer Partitionen.
Der nächste Schritt umfasst die eigentliche Verschlüsselung der Partition mit „cryptsetup“. Hierbei werden verschiedene Parameter gesetzt, unter anderem die Verschlüsselungsmethode (beispielsweise AES-XTS), die Schlüssellänge sowie die Passwort-Hashing-Methode. Nach Eingabe eines sicheren Passworts wird die Partition verschlüsselt. Anschließend kann die verschlüsselte Partition geöffnet und ein Dateisystem, typischerweise EXT4, darauf erstellt werden.
Durch den Einsatz von LUKS wird eine hohe Sicherheit der Daten gewährleistet, wobei die Auswirkungen auf die Systemleistung je nach Hardware variieren können. Eine regelmäßige Überprüfung und Sicherung der Partitionstabelle und ein funktionierendes Backup sind unerlässlich, um Datenverlust zu vermeiden.
LUKS wird in verschiedenen Szenarien eingesetzt, um Datenträger zu verschlüsseln. Die Vorteile von LUKS sind eine relative einfache Bedienung, hohe Sicherheit durch starke Verschlüsselungsalgorithmen und Unterstützung für verschiedene Schlüsselverwaltungsszenarien. LUKS verwendet „dm-crypt“ als Backend und bietet eine standardisierte Methode zur Verwaltung der Verschlüsselung.
Bei dm-crypt handelt es sich um ein transparentes Festplattenverschlüsselungssystem, das in den Linux-Kernel integriert ist und häufig in Kombination mit dem Linux Unified Key Setup (LUKS) verwendet wird. LUKS bietet einen Standard auf dem Gebiet der Festplattenverschlüsselung und erleichtert die Handhabung und Sicherheitsschlüsselverwaltung. Dabei nutzt dm-crypt LUKS-Header, um Informationen über die Verschlüsselung, wie den verwendeten Algorithmus und die Schlüssel, sicher zu speichern. LUKS ermöglicht es, mehrere Passwörter für die Entschlüsselung zu verwenden, was die Verwaltung und Wiederherstellung der verschlüsselten Daten erleichtert.
Die Nutzung von dm-crypt mit LUKS ist besonders vorteilhaft in Szenarien, in denen hohe Sicherheitsanforderungen bestehen, wie bei sensiblen Unternehmensdaten oder auf mobilen Geräten. Durch die Verwendung standardisierter Methoden und starker kryptografischer Algorithmen gewährleistet diese Kombination eine hohe Sicherheit und schützt die Daten vor unbefugtem Zugriff, selbst wenn das physische Speichermedium in die falschen Hände gerät.
Die Metadaten einschließlich Schlüsselinformationen werden im Header des verschlüsselten Geräts gespeichert. Diese Struktur ermöglicht die Verwaltung mehrerer Schlüssel und unterstützt verschiedene Verschlüsselungsalgorithmen. LUKS unterstützt unter anderem AES, Twofish und Serpent.
Installation notwendiger Software-Pakete
Auf Debian-basierten Systemen kann cryptsetup mit „sudo apt-get install cryptsetup“ installiert werden, auf Red Hat-basierten Systemen erfolgt die Installation mit „sudo yum install cryptsetup“. Der folgende Befehl initialisiert einen LUKS-Container auf einer Partition:
sudo cryptsetup luksFormat /dev/sdX1
Das System fordert zur Eingabe einer Passphrase auf. Diese Passphrase wird zum Entsperren des verschlüsselten Containers benötigt. Informationen zu den Partitionen lassen sich zum Beispiel mit „fdisk -l „anzeigen. Danach öffnet man den Container und erstellt ein Dateisystem:
sudo cryptsetup open /dev/sdX1 my_luks_volumesudo mkfs.ext4 /dev/mapper/my_luks_volume
Für das automatische Einbinden der Datenträger beim Systemstart bearbeitet man die Datei „/etc/crypttab“:
my_luks_volume /dev/sdX1 none luks
Die Partition wird in der „/etc/fstab“-Datei eingetragen:
Eine zusätzliche Passphrase kann mit folgendem Befehl hinzugefügt werden:
sudo cryptsetup luksAddKey /dev/sdX1
Um eine Passphrase zu entfernen, wird folgender Befehl verwendet:
sudo cryptsetup luksRemoveKey /dev/sdX1
Die Passphrase kann mit
sudo cryptsetup luksChangeKey /dev/sdX1
geändert werden.
Überprüfung der Verschlüsselung und Integrität der Daten
Der Verschlüsselungsstatus kann überprüft werden:
sudo cryptsetup status my_luks_volume
Ein regelmäßiger Check der Dateisystemintegrität erfolgt mittels „fsck“:
sudo fsck /dev/mapper/my_luks_volume
Der Befehl „fsck“ (File System Consistency Check) wird verwendet, um Dateisysteme auf Konsistenz und Fehler zu überprüfen und gegebenenfalls zu reparieren. Im Zusammenhang mit LUKS-verschlüsselten Partitionen ist fsck ein wichtiger Bestandteil der Datenpflege und -wiederherstellung. Vor der Anwendung von fsck auf eine LUKS-verschlüsselte Partition muss diese zunächst entschlüsselt und gemountet werden. Dies geschieht mithilfe von „cryptsetup open“, um die verschlüsselte Partition zugänglich zu machen, und „mount“, um das Dateisystem einzuhängen. Anschließend kann fsck auf die entschlüsselte Partition angewendet werden, um das Dateisystem zu überprüfen und Fehler zu beheben.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Zum Beispiel wird die verschlüsselte Partition „/dev/sda1“ mit dem Namen „encrypted_partition „geöffnet und gemountet, bevor fsck auf „/dev/mapper/encrypted_partition“ ausgeführt wird. Dieser Prozess stellt sicher, dass das Dateisystem innerhalb der verschlüsselten Container auf Integrität überprüft wird, ohne die Verschlüsselung zu beeinträchtigen.
Logs können in „/var/log/syslog“ oder mit „journalctl“ eingesehen werden, um Aktivitäten des LUKS-Containers zu überwachen:
journalctl -u cryptsetup
Die Performance kann durch Tuning der I/O-Scheduler oder Optimierung der Verschlüsselungsparameter verbessert werden. Nutzung des „noop“-Schedulers:
echo noop | sudo tee /sys/block/sdX/queue/scheduler
Verschlüsselung externer Festplatten und von USB-Sticks
Externe Laufwerke werden ähnlich wie interne verschlüsselt. Der Prozess umfasst die Initialisierung, das Erstellen eines Dateisystems und das automatische Einbinden beim Anschluss:
sudo cryptsetup luksFormat /dev/sdYsudo cryptsetup open /dev/sdY external_lukssudo mkfs.ext4 /dev/mapper/external_luks
Die Verschlüsselung der Root-Partition erfolgt meist während der Installation des Betriebssystems. Für Home-Verzeichnisse wird ähnlich wie bei externen Festplatten vorgegangen:
sudo cryptsetup luksFormat /dev/sdX3sudo cryptsetup open /dev/sdX3 home_lukssudo mkfs.ext4 /dev/mapper/home_luks
Einsatz von LUKS in virtuellen Maschinen
In virtuellen Maschinen kann LUKS für virtuelle Festplatten verwendet werden:
sudo cryptsetup luksFormat /dev/vdasudo cryptsetup open /dev/vda vm_lukssudo mkfs.ext4 /dev/mapper/vm_luks
LUKS kann dabei auch in Automatisierungsskripte integriert werden, um bei der Bereitstellung von Systemen verschlüsselte Volumes zu erstellen:
ansible-playbook create_luks_volume.yml
Verschlüsselte Partitionen in Linux nutzen
Die „cryptsetup open“-Befehle ermöglichen das Entschlüsseln und Öffnen einer verschlüsselten Partition, sodass sie gemountet und genutzt werden kann:
sudo cryptsetup open /dev/sdb1 my_encrypted_partition
In diesem ersten Beispiel wird die Partition „/dev/sdb1“ geöffnet und unter dem Namen „my_encrypted_partition“ zugänglich gemacht. Nach Eingabe des korrekten Passworts ist die entschlüsselte Partition unter „/dev/mapper/my_encrypted_partition“ verfügbar.
Beispiel 2: Öffnen einer verschlüsselten Partition mit einem spezifischen Schlüsselformat:
sudo cryptsetup open --type luks /dev/sdc1 encrypted_data
Hier wird die Partition „/dev/sdc1“ mit dem Namen „encrypted_data“ geöffnet. Die Option „--type luks“ gibt explizit an, dass es sich um eine LUKS-verschlüsselte Partition handelt.
sudo cryptsetup open --key-file /path/to/keyfile /dev/sdd1 secure_storage
In diesem Beispiel wird die Partition „/dev/sdd1“ geöffnet, wobei eine Schlüsseldatei („/path/to/keyfile“) zur Authentifizierung verwendet wird. Die entschlüsselte Partition wird unter dem Namen „secure_storage“ verfügbar gemacht.
sudo cryptsetup open --readonly /dev/sde1 readonly_partition
Diese Variante öffnet die Partition „/dev/sde1“ im Nur-Lese-Modus unter dem Namen „readonly_partition“. Das ist nützlich, wenn die Daten nur gelesen und nicht verändert werden sollen.
sudo cryptsetup open --key-slot 1 /dev/sdf1 backup_storage
In diesem Beispiel wird die Partition „/dev/sdf1“ unter Verwendung des Schlüssels aus dem „Slot 1“ geöffnet und als „backup_storage“ bereitgestellt. Diese Methode ist hilfreich, wenn mehrere Schlüssel für die Entschlüsselung verwendet werden. Nach dem Öffnen der verschlüsselten Partition kann diese wie gewohnt gemountet werden:
sudo mount /dev/mapper/my_encrypted_partition /mnt/my_mount_point