[[Vorlage(Getestet, jaunty, intrepid, hardy, dapper)]] {{{#!vorlage Wissen [:Pakete_installieren: Installation von Programmen] [:Paketquellen_freischalten: Bearbeiten von Paketquellen] [:Terminal: Ein Terminal öffnen] [:Partitionierung:] [:Editor#Root-Rechte-Bearbeiten-von-Systemdateien: Einen Editor mit Root-Rechten öffnen] [:chmod: Zugriffsrechte verändern] }}} {{{#!vorlage Warnung Ohne ein sicheres Kennwort nutzt die stärkste Verschlüsselung nichts! Wie man Passwörter am besten wählt, steht hier: [:Sicherheits_1x1:Sicherheits 1x1] }}} {{{#!vorlage Hinweis Alle folgenden Befehle benötigen [:sudo: Root-Rechte]. Man sollte also entweder immer '''sudo''' vor das betreffende Kommando setzen oder mit '''sudo -s''' Root-Status erlangen! }}} [[Inhaltsverzeichnis(2)]] [[Bild(./logo.png, align=left)]] Diese Anleitung geht auf die Erstellung und Wartung von verschlüsselten Datenträgern mittels LUKS - [http://code.google.com/p/cryptsetup/ Linux Unified Key Setup] {en} - ein. Es handelt sich um das Standardverfahren zur Festplattenverschlüsselung unter Linux. Dabei werden alle nötigen Informationen zum Öffnen einer verschlüsselten Partition oder Container-Datei in dieser gespeichert. Das erlaubt es auch [:HAL:], beim Anschließen eines externen Datenträgers mit verschlüsselten Partitionen diese nach Passwortabfrage automatisch einzubinden. Es wird hier nur auf die Verwendung von LUKS eingegangen. Für eine Schritt für Schritt-Anleitung zum verschlüsseln des Systems bitte die Artikel [:Daten_verschlüsseln:] und [:System_verschlüsseln:] hinzuziehen. = Vorbereitung = Zuerst wird dieses Paket installiert [1]. * '''cryptsetup''' In Dapper muss dazu ''universe'' [2] aktiviert sein. Anschließend wird das benötigte Kernelmodul mittels des folgenden Befehls [3] geladen: {{{#!vorlage Befehl modprobe dm-crypt }}} Damit sollte die Vorbereitung abgeschlossen sein. Zukünftig werden alle benötigen Module automatisch geladen. = Verwendung = Hier wird ein Auszug der wichtigsten LUKS-Funktionen dargestellt. Für weitere Informationen sei auf die entsprechenden Dokumentationen wie u.a. die [:man:Manpage] von cryptsetup verwiesen. == Erstellen == Zum Erstellen eines LUKS-Geräts wird eine zu überschreibende Partition erzeugt oder ausgewählt [4]. Daraufhin wird dieser Befehl ausgeführt, wobei '''''' durch den entsprechenden Namen ersetzt werden muss, z.B '''/dev/sde9''': {{{#!vorlage Warnung Alle bisherigen Daten auf dem betreffenden Gerät gehen verloren! }}} {{{#!vorlage Befehl cryptsetup -c aes-xts-plain -s 512 luksFormat }}} {{{#!vorlage Experten [wikipedia_en:XTS:XTS] unterstützt Verwaltungsschlüssel von 128 oder 256 Bit. 512 heißt in dem Fall, dass sowohl [wikipedia:Advanced_Encryption_Standard:AES] als auch XTS die maximale Schlüssellänge von 256 Bit verwenden. Um eine höhere Lese-/Schreibgeschwindigkeit zu erzielen, kann auch stattdessen 256 eingesetzt werden - das entspricht einer 128 Bit Verschlüsselung. Dies ist z.B. für Systempartitionen und langsamere Systeme empfehlenswert. Alternativ ist es möglich, den Verschlüsselungsalgorithmus [wikipedia:Twofish:Twofish] zu verwenden. Dazu wird '''aes-xts-plain''' durch '''twofish-xts-plain''' ersetzt. }}} Da XTS erst ab Hardy zur Verfügung steht, ist unter Dapper stattdessen folgender Befehl nötig: {{{#!vorlage Befehl cryptsetup -c aes-cbc-essiv:sha256 -s 256 luksFormat }}} == Öffnen == {{{#!vorlage Hinweis Die verschlüsselte Partition kann erst zum Speichern von Daten werden, wenn sie mit einem [:Dateisystem:] formatiert wurde! }}} Um ein LUKS-Gerät verwenden zu können, muss es erstmal wie im Folgenden beschrieben geöffnet werden, wobei der Name variabel ist, aber keine Sonder- und Leerzeichen enthalten sollte. Nach Eingabe des Passwortes wird die Partition unverschlüsselt auf '''/dev/mapper/''' abgebildet und kann mit dieser Bezeichnung beispielsweise zum Formatieren oder Ein-/Aushängen angesprochen werden. {{{#!vorlage Befehl cryptsetup luksOpen }}} === Beim Start mit Passwortabfrage === Zum Laden eines LUKS-Geräts beim Systemstart wird diese Zeile in angepasster Form an die Datei '''/etc/crypttab''' angehängt [5]. Daraufhin wird bei jedem Startvorgang nach dem Passwort gefragt. {{{ none luks }}} Anstelle der Gerätebezeichnung ist es auch möglich und empfehlenswert die entsprechende [:UUID:] zu verwenden. '''''' würde dann durch '''UUID=''' ersetzt. === Beim Start ohne Passwortabfrage === {{{#!vorlage Warnung Von dieser Variante wird abgeraten, so lange man sich nicht 100% sicher ist was man tut! Die hier verwendete Schlüsseldatei enthält das Passwort im Klartext, sie darf sich folglich nur auf einem verschlüsselten Datenträger befinden und nur für root lesbar sein [6]. Ansonsten ist die gesamte Verschlüsselung wirkungslos! }}} Soll ein LUKS-Gerät beim Startvorgang ohne Passwortabfrage eingebunden werden, muss in der '''/etc/crypttab''' wie oben beschrieben eine neue Zeile eingefügt werden aber anstelle von '''none''' die Position einer Schlüsseldatei angegeben sein. Der Inhalt der Datei wird exakt als Passwort übernommen, sie darf also auch kein Absatz am Ende enthalten. Der folgende Befehl [3] fragt nach dem Passwort und speichert es in der angegebenen ''''''. {{{#!vorlage Befehl read -p "Password: " passw; echo -n $passw > }}} {{{#!vorlage Hinweis Statt der Verwendung von Schlüsseldateien wird empfohlen eine große Partition zu verschlüsseln und diese mittels [:Logical_Volume_Manager: LVM] in Partitionen einzuteilen. Es ist dank der Vorteilen von LVM flexibler, weist keine Sicherheitsrisiken auf und beim Bootvorgang können mittels nur eines Passworts mehrere Partitionen freigeschaltet werden. Sollten nach dem Startvorgang weitere LUKS-Geräte ohne Passwortabfrage eingehängt werden, kann wie unter dem Punkt [:LUKS#GUI:GUI] beschrieben das Kennwort im [:GNOME_Schlüsselbund: GNOME-Schlüsselbund] hinterlegt werden. Das bringt natürlich nur mehr Sicherheit, wenn der Schlüsselbund mit einem Passwort geschützt ist! }}} === Bei der Anmeldung === Außerdem ist es möglich mittels eines extra [wikipedia:Pluggable_Authentication_Modules: PAM]-Plugins ein LUKS-Gerät automatisch beim Login einzuhängen, wenn einer der LUKS-Schlüssel identisch mit dem Anmeldepasswort ist. Die Anleitung dazu würde den Rahmen dieses Artikels sprengen, es ist aber am Beispiel der Home-Partition [:Daten_verschlüsseln#Verschluesselte-home-Partition-automatisch-beim-Anmelden-einbinden:hier] beschrieben. == Schließen == Sobald das enthaltene Dateisystem nicht mehr eingehängt ist oder anderweitig verwendet wird, kann das LUKS-Gerät wie folgt geschlossen werden: {{{#!vorlage Befehl cryptsetup luksClose }}} [[Bild(./LUKS_Gnome.png, align=right)]] == GUI == Seit Hardy sollten LUKS-Geräte auch mit [:Nautilus:] eingebunden werden können, wenn die oben erwähnte Vorbereitung durchgeführt wurde. Das Passwort kann im [:GNOME_Schlüsselbund: GNOME-Schlüsselbund] hinterlegt werden, so das LUKS-Geräte ohne extra Abfrage eingehängt werden können. Des Weiteren gibt es auch die grafische Oberfläche [http://gdecrypt.pentabarf.de/ GDecrypt] {en}, mit der LUKS-Geräte erstellt und ein- bzw. ausgehängt werden können. Dazu wird ab Hardy das folgende Paket installiert [1]: * '''gdecrypt''' (''universe'', [2]) == Passwörter verwalten == LUKS bietet insgesamt acht Speicherplätze (genannt "Slot" 0-7) für änderbare Passwörter, die jeweils den Zugriff auf die Daten erlauben. Die belegten Speicherplätze und Headerinformationen lassen sich mittels dieses Befehl überprüfen: {{{#!vorlage Befehl cryptsetup luksDump }}} === Passwort hinzufügen === Zuerst das alte Passwort eingeben,dann das neue. {{{#!vorlage Befehl cryptsetup luksAddKey }}} === Passwort löschen === Ein bekanntes Passwort kann ab Intrepid mit folgendem Befehl entfernt werden: {{{#!vorlage Befehl cryptsetup luksRemoveKey }}} Will man hingegen einen bestimmten Slot löschen, kann man dies mit folgendem Befehl tun: {{{#!vorlage Befehl cryptsetup luksKillSlot }}} Alternativ muss in Dapper und Hardy wie folgt ein Slot entfernt werden: {{{#!vorlage Befehl cryptsetup luksDelKey }}} === Passwort ändern === Zum Ändern eines Passworts wird zuerst das neue Passwort hinzugefügt und anschließend das alte entfernt. = Links = * [http://code.google.com/p/cryptsetup/ LUKS-Homepage] {en} * [http://de.gentoo-wiki.com/wiki/DM-Crypt#LUKS gentoo-wiki.com] {de} * [http://www.fedorawiki.de/index.php?title=Verschl%C3%BCsselte_Festplatten fedorawiki.de] {de} * [wikipedia:Linux_Unified_Key_Setup:Wikipedia über LUKS und dm-crypt] #tag: System, Sicherheit, Installation