Verschlüsselte Swap- und Temp-Partition
Aus Fedorawiki.de
Dieser Artikel beschäftigt sich mit der Verschlüsselung der Bereiche für den ausgelagerten Arbeitsspeicher (Swap), sowie dem Speicher für die temporären Dateien. Voraussetzung ist, dass beide Bereiche auf jeweils getrennten Partitionen liegen.
Inhaltsverzeichnis |
Motivation
Entscheidet sich ein Anwender, die Daten seiner Festplatte(n) zu verschlüsseln, so stellt sich direkt als erste Frage (noch vor dem WIE) die Frage, WAS genau zu verschlüsseln ist. Oftmals ist es nämlich gar nicht notwendig, die komplette Festplatte zu verschlüsseln (dies ist auch gar nicht möglich - zumindest der Bootloader muss inkl. einem Programm zum Entschlüsseln in einem unverschlüsselten Bereich liegen), sondern nur die relevanten Teile. Das sind in erster Linie die Benutzerdaten - wie das geht, wird in diesem Artikel gezeigt.
Sind unsere persönlichen Daten nun geschützt? Nein, denn es gibt noch mindestens zwei weitere Stellen, an denen Daten von uns auftauchen können: Bei den temporären Dateien und im ausgelagerten Speicher. Bei beiden Bereiche sind die Daten bei einem Neustart des Systems nicht mehr relevant - sie bleiben aber erhalten. Ein automatisiertes Leeren dieser Bereich beim Herunterfahren des Systems ist zwar möglich, aber funktioniert nicht in allen Fällen (z.B. Stromausfall). Die Lösung für dieses Problem lautet Verschlüsselung.
Voraussetzung
System
Der Swap-Bereich sowie das Verzeichnis für die temporären Dateien müssen sich jeweils in einer eigenen Partition befinden.
Zu installierende Pakete
Es wird das Paket cryptsetup-luks benötigt. Wenn nicht vorhanden, muss es installiert werden:
Funktionsprinzip
Zum Zeitpunkt des Bootens (bevor Automount ausgeführt wird) werden die beiden Partitionen mit einem Dateisystem formatiert (swap bzw. ext2) und mit einem zufallig erzeugten Schlüssel verschlüsselt. Es muss also vom Benutzer kein Passwort o.ä. eingegeben werden, der Vorgang ist transparent. Allerdings gilt zu beachten, dass die Daten nach erneutem Booten überschrieben werden.
Was ist zu tun?
Folgendes passiert unter folgenden Annahmen:
- Swap-Partition ist /dev/sda3.
- Temp-Partition ist /dev/sda4.
- Anlegen der Datei /etc/crypttab, falls nicht vorhanden
- Einfügen in diese Datei:
swap /dev/sda3 /dev/urandom swap,cipher=aes-cbc-essiv:sha256 tmp /dev/sda4 /dev/urandom tmp,cipher=aes-cbc-essiv:sha256
- Entfernen der Mount-Punkte der beiden Partitionen aus /etc/fstab, Datei vorher sichern!
- Einfügen in /etc/fstab:
/dev/mapper/swap swap swap defaults 0 0 /dev/mapper/tmp /tmp ext2 noexec,rootcontext=system_u:object_r:tmp_t:s0 0 0
Bei aktiviertem SELinux muss mit der Mountoption rootcontext der Kontext für das /tmp-Verzeichnis gesetzt werden, weil sonst SELinux den Zugriff auf das /tmp-Verzeichnis ganz oder teilweise blockiert, was insbesondere für gtk-Anwendungen fatal sein kann.
Nach dem nächsten Bootvorgang sollten die Daten verschlüsselt vorliegen.
Siehe auch

