{"id":421,"date":"2009-10-05T20:43:06","date_gmt":"2009-10-05T18:43:06","guid":{"rendered":"http:\/\/blog.benny-baumann.de\/?p=421"},"modified":"2009-10-05T20:43:06","modified_gmt":"2009-10-05T18:43:06","slug":"system-verschlusslung-bei-multiboot","status":"publish","type":"post","link":"https:\/\/blog.benny-baumann.de\/?p=421","title":{"rendered":"System-Verschl\u00fcsslung bei Multiboot"},"content":{"rendered":"<p>Viele werden sicherlich <a href=\"http:\/\/www.truecrypt.org\/\">TrueCrypt<\/a> f\u00fcr die Verschl\u00fcsslung von Festplatten &#8211; oder zumindest Datenkontainern &#8211; kennen. Richtig interessant wird es aber erst, wenn man einmal einen etwas umfangreicheren Usecase in Angriff nimmt, wie er die Tage bei mir aufgelaufen ist. Gefragt war hierbei eine Systeminstallation mit Dual-Boot f\u00fcr Vista + Linux (Distri frei w\u00e4hlbar) unter der Ma\u00dfgabe, dass das gesamte System nach au\u00dfen hin verschl\u00fcsselt ist.<!--more--><\/p>\n<p>Nun ist der Einsatz von TrueCrypt unter Windows kein Thema und auch die Systemverschl\u00fcsslung ist unter Windows kein Problem, was jedoch interessant ist, ist die Umsetzung der Systemverschl\u00fcsslung f\u00fcr Linux. Hier funktioniert der Ansatz rein \u00fcber TrueCrypt nicht, da TrueCrypt keine Systemverschl\u00fcsslung f\u00fcr Unix-Derivate anbietet. Aus fr\u00fcheren Experimenten mit den M\u00f6glichkeiten wei\u00df ich jedoch, dass es hier mit <a href=\"http:\/\/en.wikipedia.org\/wiki\/Logical_volume_management#Disadvantages\">LVM<\/a> und den damit m\u00f6glichen Crypt-Volumes eine nahezu \u00e4quivalente M\u00f6glichkeit gibt. Nachteilig ist hierbei einzig, dass Crypt-LVMs immer \u00fcber eine Initramfs gebootet werden m\u00fcssen, d.h. ein Teil des installierten Linu unverschl\u00fcsselt auf der Platte steht. Da die Sicherheitsanforderungen f\u00fcr die beabsichtigte Konfiguration aber weit entfernt vom Schutz gegen Geheimdienste dienen soll, ist dieser Nachteil erstmal vernachl\u00e4ssigbar.<\/p>\n<p>TrueCrypt bietet neben der M\u00f6glichkeit von &#8222;Single-Boot&#8220;-Verschl\u00fcsslung, wie ich diese im Folgenden verwenden werde auch explizit eine M\u00f6glichkeit f\u00fcr Multi-Boot-Umgebungen, jedoch habe ich &#8211; mehr oder weniger aus Zeitgr\u00fcnden &#8211; auf ein genaues <a href=\"http:\/\/www.truecrypt.org\/docs\/\">Studium der Doku<\/a> an dieser Stelle zu Gunsten <a href=\"http:\/\/board.gulli.com\/thread\/1179806-tutorial-truecrypt-und-grub\/\">eines Tutorials<\/a> verzichtet.<\/p>\n<p>Als Basis f\u00fcr das zu installierende System diente ein 64-Bit AMD mit einer 250GB Festplatte. Da mehrere Betriebssysteme unterzubringen waren habe ich mich anfangs f\u00fcr folgende Partitionierung entschieden, <\/p>\n<pre lang=\"text\">\r\nPath    Volume          FS\tLinux   Windows\r\n1       \/dev\/sda1       FAT32   \/boot   *\r\n2       \/dev\/sda2       NTFS    *       C:\r\n3       \/dev\/sda3       Ext3    \/       *\r\n4       \/dev\/sda4       Ext. Partition\r\n4:1     \/dev\/sda5       Swap    Swap    *\r\n4:2     \/dev\/sda6       NTFS    \/data   D:\r\n<\/pre>\n<p>was jedoch auf Grund von Problemen bei der Vista-Installation folgenderma\u00dfen ge\u00e4ndert werden musste:<\/p>\n<pre lang=\"text\">\r\nPath    Volume          FS\tLinux   Windows\r\n1       \/dev\/sda1       NTFS    *       C:\r\n2       \/dev\/sda2       FAT32   \/boot   *\r\n3       \/dev\/sda3       Ext3    \/       *\r\n4       \/dev\/sda4       Ext. Partition\r\n4:1     \/dev\/sda5       Swap    Swap    *\r\n4:2     \/dev\/sda6       NTFS    \/data   D:\r\n<\/pre>\n<p>Da bei einem Krypto-System zus\u00e4tzlich zur System-Partition auch jegliche Swap-Daten verschl\u00fcsselt werden m\u00fcssen, befinden sich die Linux-Partition (3) und der Swap-Bereich (4:1) in einem LVM. Dieses muss von Windows nicht beachtet werden, darf also durchaus Linux-Spezifisch sein. Der \u00fcbrige, in Partition 4:2 vergebene Speicherplatz wird voraussichtlich in ein TrueCrypt-Volume wandern, da dieses im Gegensatz zu LVM-Volumes auch unter Windows zugreifbar sind.<\/p>\n<p>Aber gut, kommen wir zur Praxis. Wie bereits erw\u00e4hnt, gestaltete sich die Vista-Installation etwas st\u00f6rrisch. Obwohl Vista an sich kein Problem mit der Installation auf Partition 2 (Stand oben) hatte, lie\u00df sich das so installierte System anschlie\u00dfend nicht booten: Entweder (Partition 1 Bootf\u00e4hig) wollte er kein System finden oder (Partition 2 bootf\u00e4hig) er war der Meinung keinen Bootloader finden zu wollen, was mehr oder weniger stimmte, weil dieser (korrekter Weise) auf Partition 1 stand.<\/p>\n<p>Somit musste (wenn auch eher ungewollt) die zweite Partitionierung her, die gerade bei \u00e4lteren Systemen ggf. zu Bootproblemen f\u00fchren kann, wenn das BIOS eine Begrenzung an dieser Stelle beinhaltet oder der ausreichende Support gro\u00dfer Platten fehlt. In meinem Fall war dies nicht der Fall, weshalb eine derartige Konfiguration m\u00f6glich wurde.<\/p>\n<p>Nach dem Vista vollst\u00e4ndig installiert war, bedurfte es neben der Installation von TrueCrypt aus einer vertrauensw\u00fcrdigen, verifizierten Quelle noch der Aktualisierung von Windows auf mindestens Vista SP1, da sich TrueCrypt ansonsten weigert, das System zu verschl\u00fcsseln. Nach dem dies (nach Nutzung des c&#8217;t-Offline-Updates) gelungen war &#8211; Vista selbst bot mir SP1 irgendwie nicht an &#8211; konnte ich die Systemverschl\u00fcsslung, wie im Tutorial oben beschrieben, starten. Der Vorgang dauerte ungef\u00e4hr 2 Stunden, die man durchaus f\u00fcr einen gem\u00fctlichen Fernsehabend nutzen kann. Neben der erw\u00e4hnten Geduld ben\u00f6tigt man hierbei noch zus\u00e4tzlich einen Brenner, da TrueCrypt auf die Erstellung einer Rescue-CD pocht, die man sich auch dringend aufbewahren sollte, da diese im Zweifelsfalle die einzige M\u00f6glichkeit zur Entschl\u00fcsslung des Systems bietet.<\/p>\n<p>Nach Abschluss der Systemverschl\u00fcsslung sollte man diese kurz testen. Insbesondere das Booten des Systems sowie verschiedene Standby-Szenarien k\u00f6nnen durchaus interessant sein, da es u.U. bei der Reinitialisierung von Treibern zu Konflikten kommen kann. In meinem Fall verliefen diese Tests reibungslos, weshalb ich beim n\u00e4chsten Schritt fortfahren kann: Dem sichern des Bootsektors.<\/p>\n<p>Wie im Tutorial beschrieben muss man hierzu ein Live-System booten. Bei mir handelete es sich speziell um eine Debian-Live-CD (Testing), jede andere Linux-CD, die einem eine Shell mit Root-Rechten und den Tools mount und dd bietet g\u00e4nge aber auch. Zum Sichern des Bootsektors (konkret dem MBR+Partitionstabelle) mountet man sich daf\u00fcr zuerst die vorhin angelegte (bei mir 256 MB gro\u00dfe) \/boot-Partition mit RW-Zugriff<\/p>\n<pre lang=\"bash\">\r\nmkdir \/mnt\/boot\r\nmount \/dev\/sda2 \/mnt\/boot\r\n<\/pre>\n<p>Verl\u00e4uft dies erfolgreich, kann man anschlie\u00dfend mit dd den MBR kopieren:<\/p>\n<pre lang=\"bash\">\r\ndd if=\/dev\/sda of=\/mnt\/boot\/tcboot.bin bs=512 count=1\r\n<\/pre>\n<p>Um zu schauen, ob der MBR wie erwartet der von TrueCrypt geschriebene ist, kann man entweder einen cat-Befehl auf die *.bin-Datei machen (Achtung: zerlegt definitiv die Display-Settings und bedarf zur Korrektur der Durchf\u00fchrung eines reset-Befehls) oder man schaut sich den Inhalt kurz mit dem Tool hexdump an. Bei beiden sollte relativ am Anfang der String &#8222;TrueCrypt&#8220; (bei Hexdump in HEX) auftauchen.<\/p>\n<p>Ist man hiermit fertig, geht es an die Linux-Installation. Diese kann im Wesentlichen wie eine normale Installation durchgef\u00fchrt werden, ben\u00f6tigt aber insbesondere bei der Partitionierung und beim Schreiben des Boot-Sektors etwas Sorgfalt. Bei der Partitionierung sollte man hierbei beachten, dass die Partitionen 3 und 4:1 beide als Crypto-LVMs ausgef\u00fchrt werden und man die Partition 2 (\/boot) korrekt einh\u00e4ngt. Beim Schreiben des Bootloaders sollte man sich f\u00fcr Grub entscheiden (nicht LILO oder Grub2!) und explizit schauen, dass dieser im MBR eingetragen wird.<\/p>\n<p>Der weitere Verlauf der Installation entspricht dann dem Vorgehen wie im Tutorial beschrieben &#8230; <\/p>\n<p>Aber gut, ich bin noch auf die Stolpersteine bei Linux gespannt, nachdem allein die Vista-Installation 5 Versuche ben\u00f6tigte. Sollten sich aber nennenswerte Probleme auftun, wird sich dies sicherlich in einem oder mehreren Updates niederschlagen &#8230;<\/p>\n<p class=\"wp-flattr-button\"><a href=\"https:\/\/blog.benny-baumann.de\/?flattrss_redirect&amp;id=421&amp;md5=1607214b6e000e126c871083946279f4\" title=\"Flattr\" target=\"_blank\"><img src=\"http:\/\/blog.benny-baumann.de\/wp-content\/plugins\/flattr\/img\/flattr-badge-large.png\" srcset=\"http:\/\/blog.benny-baumann.de\/wp-content\/plugins\/flattr\/img\/flattr-badge-large.png\" alt=\"Flattr this!\"\/><\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Viele werden sicherlich TrueCrypt f\u00fcr die Verschl\u00fcsslung von Festplatten &#8211; oder zumindest Datenkontainern &#8211; kennen. Richtig interessant wird es aber erst, wenn man einmal einen etwas umfangreicheren Usecase in Angriff nimmt, wie er die Tage bei mir aufgelaufen ist. Gefragt war hierbei eine Systeminstallation mit Dual-Boot f\u00fcr Vista + Linux (Distri frei w\u00e4hlbar) unter der [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[29],"tags":[213,239,236,238,217,237],"class_list":["post-421","post","type-post","status-publish","format-standard","hentry","category-software","tag-festplatten","tag-linux","tag-lvm","tag-privacy","tag-truecrypt","tag-verschlusslung"],"_links":{"self":[{"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/posts\/421","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=421"}],"version-history":[{"count":1,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/posts\/421\/revisions"}],"predecessor-version":[{"id":422,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=\/wp\/v2\/posts\/421\/revisions\/422"}],"wp:attachment":[{"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=421"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=421"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.benny-baumann.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=421"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}