Alexander (HH): RAID, Verschlüsselung und Mini-PC

Beitrag lesen

Moin Moin!

Hallo Hobby- und Profi-Paranoiker,

ich trage seit ein paar Wochen ein paar Gedanken zu einer etwas speziellen (externen) Festplatte mit mir rum, zu denen ich mir gern eure Gedanken anhören möchte. Es geht um Datensicherheit im doppelten Sinne, Datenverlust und unberechtigten Zugriff.

  1. RAID 1 (Spiegelung auf zwei Platten), einfach gegen Datenverlust

Sprich mir nach: RAID ist kein Ersatz für ein verifiziertes Backup. RAID ist kein Ersatz für ein verifiziertes Backup. RAID ist kein Ersatz für ein verifiziertes Backup.

  1. Verschlüsselung (truecrypt oder was anderes?!) Erfahrung habe ich nur mit truecrypt-Containern.

TC ist gerade fürchterlich am Sterben. Verschwörungstheoretiker vermuten, dass man die TC-Entwickler dazu nötigen will, eine Backdoor einzubauen oder ähnliches. Siehe http://blog.fefe.de/?ts=ad75a806.

  1. Trennung der Ver- und Entschlüsselung vom "Arbeits-PC". Ich meine damit, Ver- und Entschlüsselung (inkl. Paßworteingabe) erfolgt auf einem seperaten (Mini-)PC (oder was anderem) an dem die Festplatten hängen und dem Arbeits-PC zugänglich gemacht werden. Im Idealfall, wird dies gegenüber dem Arbeits-PC gar nicht erkennbar. Der Arbeits-PC soll in keiner anderen Weise Zugang zur Verschlüsselungs-Maschine haben, egal was für Schadsoftware sich der Arbeits-PC (temporär) einfängt. (Die Strategie, wie man mit dem Arbeits-PC umgeht, soll hier meinerseits* ausgeklammert werden.)

Meinst Du ein Festplattengehäuse mit integrierter Verschlüsselung? Die hat Heise vor einiger Zeit massenhaft verrissen. Nur mit Kenntnis der generellen MBR-Strukturen konnten die Heise-Leute die gesamte Festplatte entschlüsseln, weil die Verschlüsselung so unterirdisch schlecht implementiert war / ist.

  1. Vernichtungsladung ;-)

Thermit. Eisenoxid und Aluminium reagieren stark exotherm zu Eisen und Aluminiumoxid, schmelzen dabei auch problemlos Festplatten ein, notfalls mitsamt Gehäuse und Laufwerkselektronik. Siehe z.B. http://frank.geekheim.de/?p=2423. Wenn gerade kein Schweißbrenner zur Hand ist, tut's auch ein Streifen Magnesiumband oder eine Wunderkerze als Zünder. Löschen ist nicht unmöglich, aber sehr schwierig und zeitaufwendig.

Was ich mich frage (allgemein für den Anfang):
A: Wie läßt sich 1. und 2. sinnvoll vereinen? Wie muß/sollte 1. und 2. dafür gestaltet sein? (Bei einem hardware-RAID ist alles klar aber wie sieht es bei software-RAID aus?) Ich kenne mich mit RAIDs bisher so gut wir gar nicht aus.

RAID:

* HW-RAID (mit eigener CPU auf dem Controller) gibt's nur gegen viel Geld.
* Fake-HW-Raid (ohne eigene CPU auf dem Controller) ist oft überteuert, weil es nämlich einfach nur ein propritäres SW-RAID mit BIOS-Code zum Booten vom SW-RAID ist.
* SW-RAID kostet etwas Performance verglichen mit HW-RAID.

Ich halte SW-RAID (außer bei extremen Anforderungen an die Performance) für die sinnvollste Option, schlicht und ergreifend weil man bei einem SW-RAID unabhängig von Mainboard und RAID-Controller ist und im Falle eines Ausfalls irgendeinen gerade greifbaren Controller und irgendein gerade greifbares Mainboard zusammenstecken und das RAID wiederherstellen kann. Bei HW-RAID ist man auf den einen Controller angewiesen, den man gekauft hat, bei manchen Servern ist der außerdem noch mit den Mainboard "verheiratet" und läßt sich nicht oder nur unter großen Anstrengungen auf einem anderen Mainboard zum Laufen bringen.

SW-RAID unter Linux ist unter https://raid.wiki.kernel.org/index.php/Linux_Raid ausführlich dokumentiert.

B: Wie kann ich die Festplatten dem Arbeits-PC zugänglich machen ohne die Crypto-Maschine zugänglich zu machen? Mit einem entsprechenden ASIC wäre für dieses Teilproblem absolute Sicherheit auf elektronischer Ebene möglich (physischer Zugriff soll hier meinerseits* ausgeklammert werden) aber welche Möglichkeiten gibt es mit käuflich erwerbbarer Hardware?

Was willst Du? Willst Du einen RAID-Server oder ein externes RAID-Gehäuse?

Ein RAID-Server kann über Protokolle wie iSCSI einem anderen Rechner Plattenkapazität zur Verfügung stellen, so wie ich Linux kenne, muß die Plattenkapazität wahrscheinlich nicht auf physikalischer Hardware liegen, sondern kann ein beliebiges Block-Device sein. Z.B. auch ein TC-Container.

Ein externes Gehäuse mit zwei Platten meldet sich sinnigerweise am Host als zwei Platten an, und der Host baut daraus ein RAID und legt auf dem RAID-Block-Device ein verschlüsseltes Block-Device (TC-Container o.ä.) an.

Alternativ kann das externe Gehäuse beide Platten auch mit einem eigenen Controller zu einem (HW-)RAID zusammenfassen und sich dem Host als eine Platte präsentieren. (Das gibt es definitiv fertig zu kaufen, wenigstens als Platinchen mit 1x USB und 2x SATA. Hab nur gerade keinen Link greifbar.)

Da Du offenbar den TC-Container dem Arbeitsrechner als Block-Device unterschieben willst, wäre auch eine Samba- oder NFS-Freigabe auf einem TC-Container möglich.

Angriffspunkt auf dieses System wäre natürlich die Verbindung zwischen den Rechnern, die muß mindestens so gut geschützt sein wie der TC-Container.

C: Gibt es geeignete Mini-PCs, mit denen der Flaschenhals, zwei Platten, softwar-RAID und Verschlüsselung nicht all zu dünn wird?

Vermutlich ja, es tauchen immer wieder einige Mini-ITX-Boards für Server auf, auf denen aktuelle Low-Power-CPUs werkeln. SW-RAID alleine bremst nicht viel. Bei geeigneter Kombination aus CPU und Krypto-Software kann auch eine auf dem Papier relativ langsame CPU beachtliche Datenraten erreichen, Stichwort: Crypto-Accelerator - sprich: auf ein Crypo-Verfahren optimierte Rechenwerke.

D: Betriebssysteme? Tinfoil Hat Linux für die crypto-Maschine?

Selbst schreiben. Die NSA hat Linux, alle BSDs, MacOS und Windows komplett unterwandert. Vergiß nicht, dass auch alle Compiler NSA-verseucht sind. Du willst also damit anfangen, selbst eine CPU zu entwerfen, in Handarbeit. Du willst doch keine Backdoor durch NSA-verseuchte Chip-Design-Software haben. Dann baust Du Dir einen Assembler, einen Compiler, und schließlich das Betriebssystem. Ohne bei irgendwelchen anderen, NSA-verseuchten Leuten (ALLE!) abzuschreiben.

Alexander

--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".