Verschlüsselte Swap- und Temp-Partition

Aus Fedorawiki.de

Wechseln zu: Navigation, Suche
Dieser Artikel ist Teil der HOWTO Sammlung

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:

[root]# yum install cryptsetup-luks


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


Links

Persönliche Werkzeuge