|
Jeldrik
Anmeldungsdatum: April 25, 2007
Beiträge: 104
|

18. Juli 2007 16:37
Hallo, ich habe eine verschlüsselte Home-Partition, die Root-Partition ist allerdings nicht verschlüsselt. Ich möchte nun noch /tmp und /var nachträglich verschlüsseln. Wie kann ich das am einfachsten realisieren? Ich hab auch noch nen bisschen ungenutzen Platz auf der Festplatte zur Verfügung. Könnte also noch extra Partionen dafür anlegen. Allerdings würde ich nur sehr ungerne beim Booten drei Passwörter eingeben müssen. Hoffe es gibt dafür eine einfache Lösung und meine Schlamperei beim Installieren und nachträglichen Verschlüsseln wird nicht bestraft. Freundliche Grüße Jeldrik
|
|
aVoN
Anmeldungsdatum: Juli 16, 2007
Beiträge: 77
|

18. Juli 2007 20:52
An sich gibt es 2 Methoden: Du verschlüsselst die gesamte root Partition (Daten müssen zuvor gesichert werden), oder du erstellst (hast ja noch Platz ) 2 neue Partitionen. Ich persönlich bevorzuge die erste Methode. Wenn du nun entweder die root Partition verschlüsselt hast oder die zwei neuen Partitionen mit einem encrypted Filesystem erstellt hast, so kannst du, anstatt bei der Einbindung ein Passwort einzugeben ein key-file benutzen. Du erstellst z.B. über
dd if=/dev/random of=/home/keys/tmp.key bs=1k count=2 ein zufälligen Schlüssel und fügst diesen der neuen verschlüsselten Partition über cryptsetup luksAddKey /dev/hdx /home/keys/tmp.key diesen Schlüssel hinzu. Die /etc/crypttab musst du dementsprechend anpassen (anstatt „none“ den Pfad zur Schlüsseldatei angeben). Achte darauf, dass du den keyfiles die richtigen Rechte gibt, sonst könnte ein bösartiges Individuum diese im laufendem Betrieb einfach kopieren und die verschlüsselten Drives später manuell mounten. Empfehlung:
chown root:root /home/keys/tmp.key
chmod 600 /home/keys/tmp.key Das selbe kannst du für var auch tun. Der Bootvorgang läuft nun so ab: Du gibts das Passwort ein, und /home wird entschlüsselt. Die crypttab möchte nun die weiteren Partitionen mounten und liest dazu die keyfiles von der ehemals verschlüsselten home Partiton. Es muss also kein weiteres Passwort mit eingegeben werden. Gruß Klaus.
|
|
Jeldrik
(Themenstarter)
Anmeldungsdatum: April 25, 2007
Beiträge: 104
|

18. Juli 2007 21:12
Vielen dank erstmal. Nen paar Fragen hab ich dazu noch: 1. Ich habe gehört, dass eine Verschlüsselung von Root nochmal eine deutliche Geschwindigkeitseinbuße bedeutet. Außerdem dürften ja auf root keine privaten Daten sondern nur Systemdateien liegen, wenn /var, /tmp und /home verschlüsselt sind oder? 2. Wie viel Speicherplatz bräuchte ich für die Partition, auf der dann /tmp liegen soll? Zur Zeit ist die nichtmal 1MB groß, aber das kann ja sicherlich stark schwanken oder? 3. Werden /var und /tmp nicht schon vorm mounten der /home gebraucht? 4. Wenn ich /var und /tmp auch nach der /home Partition einbinde, kann ich das dann nicht auch alles auf eine Partition schreiben? Und wie kann ich das realisieren, so dass das mit den Rechten kein Problem gibt? Gruß Jeldrik
|
|
aVoN
Anmeldungsdatum: Juli 16, 2007
Beiträge: 77
|

18. Juli 2007 21:29
Zu 1: Zu dem Geschwindigkeitseinbußen kann ich nicht viel sagen - Hab vorher auf meinem Laptop noch Windows mit SafeGuard Easy verwendet - Verschlüsselt auch das system komplett. Und ich bin mit der Geschwindigkeit des Laptops unter Linux vollkommen zufrieden. Aber sicherlich gibt es Einbußen - Die Frage ist nur, wie groß diese (bzw, spürbar) sind. Zu 2:Zu der Größe von /var und /tmp kann ich nicht viel sagen, bin noch relativ grün hinter den Ohren, was Linux betrifft. Zu 3: Daran hab ich nicht gedacht - Kann dir da leider auch nicht helfen Zu 4: Könnte gehen, dass du /var und /tmp einfach auf home mountest - Müsste aber auch geschehen, nachdem du home eingebunde hast.
|
|
xabbuh
Supporter
Anmeldungsdatum: Mai 25, 2006
Beiträge: 5759
|

20. Juli 2007 20:14
Jeldrik hat geschrieben: 2. Wie viel Speicherplatz bräuchte ich für die Partition, auf der dann /tmp liegen soll? Zur Zeit ist die nichtmal 1MB groß, aber das kann ja sicherlich stark schwanken oder?
Das ist sehr stark abhängig davon, wie du deinen Rechner nutzt. Bei mir ist /tmp beispielsweise knapp 100 MB groß, aber nur sehr selten zu mehr als 5% ausgelastet. Jeldrik hat geschrieben: 3. Werden /var und /tmp nicht schon vorm mounten der /home gebraucht?
Nein, das sollte egal sein, so lange du die Partitionen nicht völlig „verschachtelt“ einhängst. Gruß Christian
|
|
Jeldrik
(Themenstarter)
Anmeldungsdatum: April 25, 2007
Beiträge: 104
|

21. Juli 2007 18:32
Hallo, ich hab mich nun für die Variante mit jeweils einer Partition für /tmp und /var entschieden. Hab die eingerichtet und alles funktioniert wunderbar. Ich scheitere nur noch bei der Einbindung der Key-Datei aus der verschlüsselten /home. Habe die beiden Schritte, die aVoN geschrieben hat ausgeführt:
dd if=/dev/random of=/home/keys/tmp.key bs=1k count=2 cryptsetup luksAddKey /dev/hdx /home/keys/tmp.key
(Natürlich auf mich angepasst und für jeden eine.) Anschließend hab ich die Datei als Keyfile in der /etc/crypttab eingefügt:
tmp /dev/hda7 none luks,cipher=aes-cbc-essiv:sha256 var /dev/hda8 none luks,cipher=aes-cbc-essiv:sha256
Nur leider gibt das jetzt irgendein Fehler beim Booten. Das geht leider alles zu schnell, als dass ich sehen würde, was genau dort für eine Fehlermeldung steht. Aufjedemfall werden tmp und var nicht eingebunden. (Und das /var nicht eingebunden ist, merkt mensch beim Booten sehr schnell. ) Habt ihr ne Idee, was ich falsch mache? Ist wahrscheinlich nur nen klitze kleiner Fehler, auf den ich mal wieder einfach nicht komme. _______________________ Achja, ich hab noch ne Zweite Frage: Ich hatte erstmal Probleme beim Einbinden der /tmp. Ich bin dann darauf gekommen, dass die Rechtevergabe falsch ist. Ist es richtig, dass der Ordner /tmp die Rechte 777 hat? Gruß Jeldrik
|
|
xabbuh
Supporter
Anmeldungsdatum: Mai 25, 2006
Beiträge: 5759
|

22. Juli 2007 11:27
Hallo, Jeldrik hat geschrieben: Anschließend hab ich die Datei als Keyfile in der /etc/crypttab eingefügt:
tmp /dev/hda7 none luks,cipher=aes-cbc-essiv:sha256
var /dev/hda8 none luks,cipher=aes-cbc-essiv:sha256
wenn das deine aktuelle crypttab ist, dann hast du genau diesen Schritt vergessen. Richtig müsste es so aussehen:
tmp /dev/hda7 /home/keys/tmp.key luks,cipher=aes-cbc-essiv:sha256
var /dev/hda8 /home/keys/var.key luks,cipher=aes-cbc-essiv:sha256 Zudem scheint mir die Größe des Schlüssels, den du dir mit dd holst, nicht ganz korrekt zu sein. Es müsste wohl so aussehen:
dd if=/dev/random of=/home/keys/tmp.key bs=32 count=1 Jeldrik hat geschrieben: Ich hatte erstmal Probleme beim Einbinden der /tmp. Ich bin dann darauf gekommen, dass die Rechtevergabe falsch ist. Ist es richtig, dass der Ordner /tmp die Rechte 777 hat?
Korrekterweise müssten die Rechte auf 1777 gesetzt werden. Gruß Christian
|
|
Jeldrik
(Themenstarter)
Anmeldungsdatum: April 25, 2007
Beiträge: 104
|

22. Juli 2007 13:18
Hallo, die Einträge in der /etc/crypttab hatte ich natürlich so, wie du sie geschrieben hast. Hab nur die beiden falschen kopiert. Ich habe jetzt nochmal die Key-Files mit deinem Befehl neuerstellt und nochmal hinzugefügt. Auch damit funktioniert es nicht. Kann mir jemand sagen, wo ich Logfiles vom Start finde? Ich sehe leider nicht, was da genau passiert, weil das alles zu schnell geht. Die Rechtevergabe von dem Ordner tmp hab ich geändert. Was ist denn der Unterschied zwischen 777 und 1777? Gruß Jeldrik
|
|
xabbuh
Supporter
Anmeldungsdatum: Mai 25, 2006
Beiträge: 5759
|

22. Juli 2007 21:18
Jeldrik hat geschrieben: Die Rechtevergabe von dem Ordner tmp hab ich geändert. Was ist denn der Unterschied zwischen 777 und 1777?
Der Unterschied ist, dass bei letzterer Variante durch das gesetzte Sticky Bit jeder Benutzer nur seine eigenen Dateien löschen kann. Gruß Christian
|
|
aVoN
Anmeldungsdatum: Juli 16, 2007
Beiträge: 77
|

22. Juli 2007 22:44
Hey xabbuh. Ich habe bezüglich des Schlüssels eine Frage. Im Ubuntu Wiki steht, man solle dd if=/dev/random of=… bs=32 count=1 nehmen. In einem anderen Artikel habe ich dies mit bs=1k count=2 gesehen. Was sind die Unterschiede - und welche gibt es? Mein System läuft zur Zeit stabil, doch manchmal funktioniert das Einbinden des Schlüssels nicht.
|
|
xabbuh
Supporter
Anmeldungsdatum: Mai 25, 2006
Beiträge: 5759
|

22. Juli 2007 22:59
Die beiden Parameter bs und count geben an, wie viele (count) Blöcke mit welcher Größe (bs = blocksize) kopiert werden sollen. Im ersten Beispiel wären das 32 Bytes im zweiten Beispiel 2048 Bytes. Du erhälst somit also zwei Schlüssel mit unterschiedlichen Größen. Möglicherweise kommt es zu diesen unterschiedlichen Schlüsselgrößen durch unterschiedliche Verschlüsselungsalgorithmen. Sicher kann ich dir das aber leider nicht sagen. Wo hast du denn das zwei Beispiel gefunden gehabt?
|
|
Jeldrik
(Themenstarter)
Anmeldungsdatum: April 25, 2007
Beiträge: 104
|

23. Juli 2007 01:59
Ich bin dem Fehler mal noch ein wenig auf die Schliche gekommen: 1. Ich meine beim Start (das geht echt alles sehr schnell und habe keinen Log von der Bildschirmausgabe gefunden…) erkannt zu haben, dass dort steht, er könne die key-files nicht finden. 2. Ich habe einmal die Partition von Hand mit dem key-file eingehängt und dort gab es keinerlei Probleme. Hier nochmal meine Einträge in der crypttab:
home /dev/hda6 none luks,retry=1,cipher=aes-cbc-essiv:sha256 tmp /dev/hda7 /home/keys/tmp.key luks,cipher=aes-cbc-essiv:sha256 var /dev/hda8 /home/keys/var.key luks,cipher=aes-cbc-essiv:sha256
Und das entsprechende in der fstab:
/dev/mapper/home /home ext3 defaults 0 0 /dev/mapper/tmp /tmp ext3 defaults 0 0 /dev/mapper/var /var ext3 defaults 0 0
Eventuell ist noch entscheidend, dass das Passwort mit dem ich die verschlüsselten Partitionen erfolgreich einhängen kann auf key-slot 0 liegt und die key-files auf key-slot 2. Ich hoffe ihr habt da irgendeine Idee…
|
|
aVoN
Anmeldungsdatum: Juli 16, 2007
Beiträge: 77
|

23. Juli 2007 10:29
xabbuh, das war aus einer Anleitung (link Verlegt *g*), in der man sein System mit SWAP verschlüsseln konnte und trotzdem noch Hibernate verwenden konnte. (OK, Hibernate geht auf meinem Notebook nicht - Genauso wie standby - Aber das geht selbst ohne verschlüsselung alles nich ) Jeldrik: Versuch erstmal
home /dev/hda6 none luks,retry=1,cipher=aes-cbc-essiv:sha256
tmp /dev/hda7 /home/keys/tmp.key luks,retry=1,cipher=aes-cbc-essiv:sha256
var /dev/hda8 /home/keys/var.key luks,retry=1,cipher=aes-cbc-essiv:sha256 Wenn es immer noch nicht klappen will, so versucht er wahrscheinlich doch zuvor /var und /temp zu mounten bevor /home gemountet wurde - Folglich findet er keine Schlüssel. Um das zu prüfen, musst du mal sehen, ob er home vor /var bzw /temp einbinden will beim boot, also vor der Passworteingabe.
|
|
aVoN
Anmeldungsdatum: Juli 16, 2007
Beiträge: 77
|

23. Juli 2007 10:39
Wo wir gerade dabei sind: Irgendwie spinnt mein System manchmal - Auch beim booten: http://www.ubuntuusers.de/paste/12997/ Dort habe ich nur meine alten bs=1k count=2 keys durch bs=32 count=1 keys ersetzt. Beim Neueinbinden der Keys hat er erst einmal gesponnen bis es endgültig klappte.
|
|
Jeldrik
(Themenstarter)
Anmeldungsdatum: April 25, 2007
Beiträge: 104
|

23. Juli 2007 15:48
Hallo, die Änderung (retry=1 als Option in /etc/crypttab bei den beiden Partitionen) hat nur bewirkt, dass die Fehlermeldung (Kann keyfile für tmp nicht lesen.) nun beim Starten zweimal auftaucht. Wäre es sicherheitstechnisch ein Risiko für alle drei Partitionen das gleiche Passwort zu verwenden? Könnte das Passwort dadurch leichter geknackt werden? (Mir ist natürlich bewusst, dass dann alle Platten offen liegen, wenn ein Passwort bekannt ist, das wäre aber auch so, wenn auf der /home die keyfiles der anderen liegen würden.) Gruß Jeldrik
|