Heute zeige ich euch wie einfach es ist mit FreeNAS ein ZFS Volume zu verschlüsseln. FreeNAS benutzt aktuell die Version 28 von ZFS und ist daher ggf. nicht mit anderen FreeBSD Verschlüsselungen kompatibel. Das bedeutet, dass ihr eine unter FreeNAS verschlüsselte Festplatte bzw. einen verschlüsselten Verbund nur unter FreeNAS entschlüsseln könnt.
Ansonsten solltet ihr beachten, das die Lese- und Schreibgeschwindigkeit des Verbundes durch eine Verschlüsselung negativ beeinflusst werden kann, gerade auf schwächerer Hardware kann die Geschwindigkeit um 35% oder mehr einbrechen.
Im ersten Schritt müssen wir zunächst ein ZFS Volume mit Verschlüsselung erstellen. In meinem Testsystem befinden sich aktuell 4 Festplatten a 3TB die ich zu einem Raid-Z (Raid5) Verbund zusammenschließen möchte.
Wir befinden uns in der Speicheransicht von FreeNAS. Hier wählt ihr ZFS Volume Manager und im darauf folgenden Fenster die Option Manual setup aus.
Hier muss nun der Haken bei Encryption gesetzt werden. Zusätzlich müssen alle Festplatten markiert werden, die in den Verbund aufgenommen werden sollen (in meinem Beispiel sind dies ADA0 – ADA3).
Nach einigen Minuten erscheint der neue ZFS Verbund in der Speicheransicht von FreeNAS. Der ZFS-Raid Verbund ist nun bereits verschlüsselt und kann nur mit dem Master-Key, der sich in eurer FreeNAS Version befindet, entschlüsselt werden.
Noch sicherer ist es aber ein zusätzliches Passwort zu vergeben. Dazu wählt ihr eurer ZFS Volume aus und klickt unten auf Create Passphrase. Wählt hier ein starkes Passwort mit mindestens 8 Zeichen aus.
Nun solltet ihr euch den GELI (Recovery) key herunterladen. Diesen benötigt ihr später um euer verschlüsseltes ZFS Volume in ein neues FreeNAS einzubinden, z.B. nach einem Update. Dieser Key ist sehr wichtig – verliert ihn nicht. Das gilt natürlich auch für euer eben vergebenes Passwort.
Der Recovery Key gilt nur für den aktuellen Verbund. Habt ihr mehrere ZFS Volumes, müsst ihr auch mehrer Keys haben!
Nach einem Neustart von FreeNAS navigiert ihr nun wieder in die Speicheransicht. Hier seht ihr nun, das euer verschlüsseltes ZFS-Volume zwar sichtbar, aber Locked – also gesichert – ist.
Klickt unten auf die Unlock Schaltfläche um das verschlüsselte ZFS Volume mittels eures Passwortes freizugeben. Nun könnt ihr wie gewohnt auf eure Daten zugreifen.
Wie oben bereits erwähnt, muss man beim Einsatz einer AES-Verschlüsselung ggf. Geschwindigkeitsverluste hinnehmen. Hier spielt die verwendete Hardware bzw. die Menge an Arbeitsspeicher eine große Rolle. Im nachfolgenden ein Screenshot von einem Bay Trail (Intel Celeron J1900) System mit 4GB Arbeitsspeicher und einem ZFS Verbund aus 4 Festplatten a 3TB.
Ich hoffe ich konnte euch zeigen, wie einfach es ist mittels der FreeNAS eigenen Verschlüsselung Daten zu sichern. Die Verschlüsselung basiert auf AES mit einer Schlüssell#änge von 256bit. AES 256bit konnte – soweit bekannt – im Mai 2015 noch nicht geknackt werden.
Höchst informativer Artikel, vielen Dank für den ergänzenden Test.
Eine Kleinigkeit noch, der letzte Satz lautet: „AES 256bit konnte – soweit bekannt – im Mai 2015 noch nicht geknackt werden.“
Sind Sie mit der Zeitangabe sicher? Falls ja: wo kaufen Sie Ihre Glaskugeln? 😉
Nebenbei: planen Sie noch — wie kürzlich erwogen — Tests mit Win 7 und/oder Linux? Es wäre bestimmt interessant, die Leistungsfähigkeit des Bay-Trail-Systems bei verschlüsselter Datenspeicherung im Fileservereinsatz unter Verwendung dieser Systeme sehen zu können. Mit Ihrem bereits vorhandenen ausführlichen FreeNASTest wäre dann eine Einordnung möglich, welche Einflüsse ZFS und RAID haben.
@NASPlaner: Ups, das sollte natürlich 2014 heißen.. Den Test mit Windows 7 und Truecrypt reiche ich die Tage noch nach, wie versprochen!
Update: Ich habe den Test heute fertig bekommen. Da ein Windows Test nicht in diesen Artikel passt, habe ich ihn in [link=https://technikaffe.de/anleitung-144-guenstiger_office_pc_mit_ssd_und_windows_7_auf_bay_trail_basis]diesen Artikel[/link] (unter Geschwindigkeit) hinzugefügt.
Hallo Stefan,
erstmal gratuliere ich euch zu der sehr gelungenen Seite.
Ich habe da eine Frage zu Festplattenverschlüsselung an sich.
Die laut Wikipedia „…keinen Schutz bietet, wenn der Rechner gebootet und mit einem Netzwerk verbunden ist.“(https://de.wikipedia.org/wiki/Festplattenverschl%C3%BCsselung)
Macht es da einen Unterschied ob es sich dabei um einen RAID-Verbund handelt oder nicht? Ist es außerdem ein Unterschied ob sich die Verschlüsselte HDD/RAID in einem Server/NAS oder dem Spielerechner befindet?
Der Hintergrund ist ich möchte meine Daten verschlüsseln, bevor ich sie zum Fernseher/Handy streame, da alles über WLAN/Wifi läuft.
Ich hoffe du kannst mir da weiterhelfen.
MIt freundlichen Grüßen
Daniel
@Daniel: Die her beschriebene Verschlüsselung bringt nur etwas wenn jemand z.B. die Festplatte / den Raid klaut – dann kann der Dieb nicht auf deine Daten zugreifen. Du interessierst dich ja sowie ich verstanden habe dafür, die Daten während des Transfers / Streaming zu verschlüsseln. Damit habe ich noch nie gearbeitet – wird denke ich auch recht selten sein.
Eine Verschlüsselung die Daten vor Datenklau über Internet schützt, gibt es also nicht?
Bzw. nur Präventiv durch Sicherheitsprogramme wie AV-Programme und Firewalls…?
@Daniel: Eventuell würde eine VPN Lösung für dich in Frage kommen. Wir nutzen in unserer Firma z.B. [link=https://openvpn.net/]OpenVPN[/link]
Danke für den schönen Artikel.
Mich interessieren Unterschiede und mögliche Einschränkungen beim resilvern. Es wird sicherlich deutlich langsamer laufen, aber gibt es sonst etwas dabei zu beachten?
@Solero: Es sind mir keine Einschränkungen beim Resilvern eines verschlüsselten ZFS Volumes bekannt, das der Vorgang durch die Verschlüsselung (je nach Hardware) natürlich länger dauert ist denke ich klar da einfach deutlich mehr Arbeitsaufwand für das System anfällt.
Auch wenn der Artikel schon etwas älter ist, gehe ich mal davon aus, dass die Informationen grundsätzlich noch aktuell sind…
Meine Frage ist folgende: in dem Artikel heisst es, dass zusätzlich ein Passwort vergeben werden kann. Das bedeutet dann im Umkehrschluss, dass ich trotzdem den Systemeigenen Key benötige !?
Wenn mir also das System abbrennt, aber die Platten funktionsfähig bleiben, dann kann ich dementsprechend nur mit dem vergebenen Passwort nicht arbeiten, weil mir der systemeigene Key fehlt ?
Gibt es eine Möglichkeit nur mittels einem eigenen Passwort zu verschlüsseln, so dass die Platten auch in einem anderen System nur mittels Passwort entschlüsselt werden können ?
(Der systemeigene Key ist mir unerklärlich, da HDD-crypt doch vor physischem Zugriff schützen soll. Es besteht faktisch aber kein Schutz, da wohl kaum jemand nur die Platten klaut und den Server stehen lässt. Das root Passwort ist bei physischen Zugriff ja idR kein dauerhaftes Hinderniss.)
@Besucher: Du benötigst sowohl den Schlüssel (den man sich herunterladen kann/sollte für Recovery-Zwecke) sowohl dein von dir ausgesuchtes Passwort.
Ist es denn auch möglich ein schon vorhandenes zfs Volume bzw Verbund mit Daten direkt zu verschlüsseln, also ohne ein neues Volume anzulegen?