Open Source im professionellen Einsatz

© Tresor: Carolina K. Smith M.d., Fotolia

Workshop: Notebook-Platten mit DM-Crypt und LUKS komplett verschlüsseln

Mobiler Datentresor

Auf einem Notebook das Homeverzeichnis verschlüsseln ist nur die halbe Miete: Auch aus Log- und Konfigurationsdateien ziehen Diebe und unehrliche Finder Rückschlüsse. Schützen Sie mit DM-Crypt und LUKS die gesamte Festplatte vor fremden Blicken - das kann aber keine Distribution out of the Box.

Einzelne Dateisysteme verschlüsseln ist keine große Herausforderung und bei einigen Distributionen schon während der Installation möglich. Aufwändig wird es, wenn Sie auch das Root-Dateisystem schützen wollen: Weder Suse noch Debian Linux bieten ein Hilfsprogramm, mit dem Sie dies bei der Installation (oder später) erledigen könnten. Darum ist Handarbeit nötig.

Seit Kernel 2.6.4 ist DM-Crypt [1] das bevorzugte Tool für die Verschlüsselung von Dateisystemen: Es nutzt die Device-Mapper-Infrastruktur [2] und verschlüsselt Blockgeräte transparent; dazu verwendet es das Crypto-API des Kernels. Linux Unified Key Setup (LUKS) steuert zusätzliche Verbesserungen bei, die ein früherer Linux-Magazin-Artikel [3] ausführlich beschreibt. Implementiert sind die LUKS-Konzepte im Konfigurationswerkzeug »cryptsetup-luks« [4].

In diesem Workshop installieren Sie zunächst ein Standard-Linux-System (Suse oder Debian), mit dem Sie dann schrittweise die vorhandenen Dateisysteme verschlüsseln. Die ungeschützte Partition löschen Sie am Schluss und verwenden sie für andere Aufgaben, zum Beispiel um das Verzeichnis »/home« auf eine eigene verschlüsselte Partition auszulagern.

Die ganze Festplatte

Bei einem verschlüsselten Root-Dateisystem ist allerdings eine besondere Hürde zu nehmen: Das Programm »init« (auf der initialen RAM-Disk »initrd«) muss beim Booten auf das Root-Dateisystem zugreifen können, um es zu mounten. Das macht eine Anpassung der »initrd« nötig. Dabei ist es ein Ziel, dass auch nach einem Kernelupdate noch ein bootfähiges Linux-System zur Verfügung steht.

Wegen des umfassenden Sicherheitsgewinns verschlüsselt dieser Workshop die gesamte Festplatte (bis auf die Partitionstabelle des Master Boot Record). Deshalb wandert die Bootpartition »/boot«, die unverschlüsselt bleiben muss, auf ein externes Medium, beispielsweise einen USB-Stick. Um davon booten zu können, ändern Sie die Einstellungen des Bios und des Bootloaders Grub.

Finden Sie diesen Ansatz unpraktisch, kann die Bootpartition auch auf der Festplatte bleiben. Wichtig ist dann aber, dass »/boot« auf einer eigenständigen, unverschlüsselten Partition landet. Keine Sorge: Auch nach der Komplettverschlüsselung können Sie Patches und Kernelupdates recht gelassen einbauen, auch die üblichen Backup- und Recovery-Werkzeuge arbeiten wie bisher.

Alternativ zur Neuinstallation ist es auch möglich, ein bestehendes System anzupassen, sofern auf der Festplatte noch ausreichend freier Platz vorhanden ist, um eine neue Partition für die zu verschlüsselnden Daten anzulegen.

Vorbereitung

Das Handwerkszeug besteht aus einem geeigneten Notebook, einem USB-Stick mit mindestens 64 MByte Speicher und Ihrer bevorzugten Linux-Distribution (ab Kernel 2.6.11), getestet wurden Suse Linux 9.3 und 10.0 sowie Debian Sarge. Im Bios des Notebooks prüfen Sie, ob es USB als Bootmedium unterstützt (Abbildung 1). Mit Hilfe einer Live-CD stellen Sie sicher, dass Linux das Notebook zufrieden stellend unterstützt; bei der Gelegenheit löschen Sie auch gleich die Notebook-Festplatte (siehe Kasten "Sicheres Löschen von Daten").

Bei der Erstinstallation teilen Sie die Festplatte wie in der ersten Spalte von Tabelle 1 in vier Partitionen auf. (Wollen Sie auf das Booten mit dem USB-Stick verzichten, zeigt die zweite Tabellenspalte eine geeignete Alternativpartitionierung.) Das Linux-System landet dabei - zunächst unverschlüsselt - auf »/dev/hda4«. Abbildung 2 zeigt, wie Sie den Partitionierungsvorschlag auf einer 40-GByte-Festplatte umsetzen.

Größe und Anzahl der Partitionen passen Sie an Ihre Notebook-Festplatte und den Verwendungszweck an, auch Dual- oder Multiboot-Konfigurationen sind denkbar. Legen Sie während der Installation noch keine Benutzer an; das erledigen Sie besser später auf dem komplett verschlüsselten System.

Ist die Installation abgeschlossen, liegt auf »/dev/hda4« ein voll funktionsfähiges Linux-System. Bei Kernelversionen unter 2.6.11 (zum Beispiel bei Debian Sarge) ist anschließend ein Update fällig. Für die folgenden Schritte benötigen Sie das Konfigurationstool »cryptsetup-luks«. Der Kasten "Updates für Debian Sarge" beschreibt die Aktualisierung eines Sarge-Systems; unter Suse Linux installieren Sie nur »cryptsetup-luks«. Auf der LUKS-Seite [4] gibt es eine vorkompilierte, statisch gelinkte Version, die Sie nach »/sbin/cryptsetup-luks« kopieren.

Diesen Artikel als PDF kaufen

Als digitales Abo

Als PDF im Abo bestellen

comments powered by Disqus

Ausgabe 07/2013

Preis € 6,40

Insecurity Bulletin

Insecurity Bulletin

Im Insecurity Bulletin widmet sich Mark Vogelsberger aktuellen Sicherheitslücken sowie Hintergründen und Security-Grundlagen. mehr...

Linux-Magazin auf Facebook