EINLEITUNG
Nach dem Einbau einer SSD in meinen Laptop und Neuinstallation von openSUSE Leap mit Vollverschlüsselung via LUKS/dm-crypt stand ich vor einem Problem: TRIM ist für LUKS/dm-crypt nicht aktiviert. Das kann man herausfinden, wenn man im Terminal
Code:
dmsetup table /dev/mapper/[NamedesLUKSLaufwerks]
eingibt: Die Info wird NICHT ausgegeben.
Die Anwendung von TRIM ist für Performance und Haltbarkeit einer SSD jedoch zu empfehlen.
Ein Post hier im Forum https://forums.opensuse.org/showthre...ren-unter-13-1 hat mir entscheidende Hinweise gegeben, ist jedoch nicht mehr up-to-date (z.B. wird mittlerweile dracut verwendet), daher beschreibe ich hier meine Vorgehensweise.
Eine große Hilfe war mir übrigens auch der Eintrag bei Ubuntuusers.de: https://wiki.ubuntuusers.de/SSD/TRIM...rschluesselung
VORWEG EIN HINWEIS ZUR SICHERHEIT DIESER KONFIGURATION:
Das Trimmen einer verschlüsselten SSD gibt potentiell Informationen über diese preis. Angreifer können dadurch Informationen über den Füllungsgrad, belegte/freie Sektoren, sowie ggfs. das verwendete Dateisystem und andere Metainformationen auslesen!
Hier muss jeder User eine Abwägung zwischen Sicherheit und Komfort (bzw. der Lebensdauer und Performance seiner SSD) treffen.
- Wenn jemand auf die absolute Sicherheit und Vertraulichkeit seiner Daten angewiesen ist und die Struktur der Daten auf dem Laufwerk und ähnliche Metainformationen Niemandem bekannt werden dürfen, sollte man TRIM NICHT aktivieren. Allerdings würde ich in diesem Fall sowieso zu weitergehenden Sicherheitsmaßnahmen im Sinne der plausiblen Abstreitbarkeit raten (denn das Vorhandensein eines LUKS-Laufwerks bestätigt ja auch schon, das jemand "etwas zu verbergen" hat).
- Wenn jemand seine Daten verschlüsselt, um "Gelegenheitsangreifern" das Auslesen von privaten Daten zu verwehren und ggfs. das Laufwerk später unbedenklich zur Zweitnutzung weitergeben zu können, ist TRIM auf der SSD vertretbar, denke ich.
ANLEITUNG
Alle Aktionen müssen als root ausgeführt werden
Schritt 1: Sicherungskopie der aktuellen initrd anlegen Schritt 2: Sicherungskopie der aktuellen crypttab anlegen Schritt 3: crypttab editieren, als Mountoption für das LUKS-Laufwerk ergänzen
Schritt 3: Neue initrd erstellen: Terminal als root öffnen, Schritt 4: Neustarten, jetzt ist TRIM für das LUKS-Laufwerk aktiviert. Dies kann überprüft werden im Terminal als root mit
Code:
dmsetup table /dev/mapper/[NamedesLUKSLaufwerks]
, das Ergebnis sollte dann in etwa so aussehen, mit der "allow_discards"-Info am Ende:
Code:
0 975931407 crypt aes-xts-plain64 0000000000000000000000000000000000000000000000000000000000000000 0 8:3 4096 1 allow_discards
Schritt 5: Je nach Präferenz kann jetzt manuell getrimmt werden, ein Eintrag zum automatischen TRIM in die fstab erstellt werden (siehe Post oben) oder ein cronjob angelegt werden. Ich habe mich für letztes entschieden und unter ein Skript angelegt, das ausführt und loggt.
Vorlage für ein TRIM-Skript:
Code:
#!/bin/sh
LOG=/var/log/Trim_SSD.log
echo "*** $(date -R) ***" >> $LOG
fstrim -a -v >> $LOG