Wie kann ich mein System verschlüsseln (am besten mit lvm + dm-crypt/luks), sodass Suspend to RAM funktioniert und beim Suspend to RAM alles verschlüsselt ist?
Antwort1
Was Sie verlangen, ist kein einfaches Suspend-to-RAM, bei dem der RAM eingeschaltet bleibt und alles andere heruntergefahren wird. Da Sie Klartext-Prozessdaten aus dem RAM löschen würden, müssen Sie sie alle in das Suspend-Image einordnen. Sie müssen also den Hibernation-Code (d. h. Suspend-to-Disk-Code) aufrufen. Die realistische Möglichkeit, dies zu tun, wäre, eine verschlüsselte Ramdisk zu erstellen, sie als Swap-Speicher zu deklarieren und den Speicher mit anderen Prozessen zu füllen. Selbst dann würden Kerneldaten nicht verschlüsselt; dazu bräuchten Sie meiner Meinung nach einen umfangreichen Kernel-Patch.
Wenn Sie hingegen bereit sind, den Ruhezustand auf die Festplatte zu verlagern, ist dieses Problem gelöst. Das Image für den Ruhezustand wird im Swap-Speicher gespeichert. Ihr Swap-Speicher sollte aufgrund Ihrer Sicherheitsanforderungen bereits verschlüsselt sein. Stellen Sie sicher, dass er mit einem bekannten Schlüssel und nicht mit einem zufälligen verschlüsselt ist (einige Setups mit verschlüsseltem Swap-Speicher verwenden /dev/random
als Schlüsseldatei eine Datei für den Swap-Speicher, was bei jedem Booten zu einem anderen Schlüssel führt, sodass es unmöglich ist, ein Image im Ruhezustand fortzusetzen). Die wichtigsten Distributionen sollten den Ruhezustand standardmäßig unterstützen, einschließlich der Fortsetzung aus einem verschlüsselten Swap-Speicher.
Antwort2
Kasse tpm-luks
:https://github.com/shpedoikal/tpm-luks
Es speichert Ihre Verschlüsselungsschlüssel im Trusted Platform Module Ihres Computers.
Eine andere Möglichkeit könnte seinTRESOR, das CPU-Register zum Speichern geheimer Schlüssel verwendet.