Festplattenverschlüsselung: Difference between revisions
Line 31: | Line 31: | ||
== Praktikum für:== |
== Praktikum für:== |
||
====Linux 2.6==== |
====Mit Linux 2.6 einzelne Partitionen verschlüsseln==== |
||
*Einzelne Partitionen verschlüsseln |
|||
Es sollte sich beim Kernel mindestens um die Version 2.6.10 handeln, da dort und schon früher verschiedene Bugs gefixt wurden. |
|||
Wir haben, sagen wir mal, unsere /home Partion auf /dev/hda6. |
Wir haben, sagen wir mal, unsere /home Partion auf /dev/hda6 und natürlich root-Rechte. |
||
Wir machen ein simples backup von home. |
Wir machen ein simples backup von home. |
||
tar -cvvjf home.tar.bz2 /home/ |
% tar -cvvjf home.tar.bz2 /home/ |
||
Partition unmounten... |
Partition unmounten... |
||
umount /home/ |
% umount /home/ |
||
Festplatte mit Schroot füllen |
Festplatte mit Schroot füllen |
||
wipe -qk /dev/hda6 |
% wipe -qk /dev/hda6 |
||
Damit wird die Festplatte aus /dev/random 4 Mal überschieben. |
Damit wird die Festplatte aus /dev/random 4 Mal überschieben. |
||
Line 53: | Line 53: | ||
Wir müssen nun den Key und den Passphrase festlegen. Es gibt mehrer Möglichkeiten dies zu tun. Die einfachste Möglichkeit, ist den Key im Partitionsheader festzulegen, und einen Passphrase um ihn freizuschalten. |
Wir müssen nun den Key und den Passphrase festlegen. Es gibt mehrer Möglichkeiten dies zu tun. Die einfachste Möglichkeit, ist den Key im Partitionsheader festzulegen, und einen Passphrase um ihn freizuschalten. |
||
cryptsetup create homepartition /dev/hda6 |
% cryptsetup create homepartition /dev/hda6 |
||
Jetzt müssen wir einen Passphrase eingeben. Beim erstellen sollten man jedoch die Option -y verwenden, welche veranlasst, dass man das Password zweimal eingeben muss. |
Jetzt müssen wir einen Passphrase eingeben. Beim erstellen sollten man jedoch die Option -y verwenden, welche veranlasst, dass man das Password zweimal eingeben muss. |
||
cryptsetup -y create homepartition /dev/hda6 |
% cryptsetup -y create homepartition /dev/hda6 |
||
All dies erstellt ein virutelles Blockdevice, nämlich /dev/mapper/homepartition. |
All dies erstellt ein virutelles Blockdevice, nämlich /dev/mapper/homepartition. |
||
Sollte man das Password allerdings zweimal falsch eingegeben haben, wird das Device auch erstellt. dann muss man das device wieder löschen. |
Sollte man das Password allerdings zweimal falsch eingegeben haben, wird das Device auch erstellt. dann muss man das device wieder löschen. |
||
cryptsetup remove homepartition /dev/hda6 |
% cryptsetup remove homepartition /dev/hda6 |
||
Sollten wir allerdings den Passphrase |
Sollten wir allerdings den Passphrase richtig eingegeben haben, können wir jetzt ein Dateiensystem auf dem virtuellen Blockdevice erstellen. |
||
mkfs.ext3 /dev/mapper/homepartition |
% mkfs.ext3 /dev/mapper/homepartition |
||
Dann können wir unsere neue |
Dann können wir unsere neue home-Partition mounten. |
||
mount /dev/mapper/homepartition /home/ |
% mount /dev/mapper/homepartition /home/ |
||
Revision as of 21:57, 4 October 2005
Wozu braucht man Festplattenverschlüsselung
- Der böse Dieb hat mein Notebook geklaut
- Die Bullen nehmen meine Daten auseinander
- Die Konkurenzfirma hats auf den Sourcecode abgesehen
- Ich bin paranoid
Implementationen unter:
Linux
Linux 2.2 / 2.4 / 2.6
Unter Linux 2.4 wird die Festplattenverschlüsselung mit dem Loopbackdevice realisiert. Es können alle im Kernel verwendbaren Verschlüsselungsalgorythmen verwendet werden, genau wie in 2.6, jedoch ist nach verschiedenen Angaben die Implementation "nicht sehr sauber" und das Design führt zu fehlern. Dazu kommt, dass es offensichtlich früher (oder auch heute ?) zahlreiche Bugs in der loop.c des Linux Kernels gegeben hat.
Die Dokumentation für cryptoloop des Linux Kernels (2.6) meint dazu auch:
WARNING: This device is not safe for journaled file systems like ext3 or Reiserfs.
Please use the Device Mapper crypto module instead, which can be configured to be on-disk
compatible with cryptoloop device.
Wenn es nicht erforderlich ist, eine Verschlüsselung mittels des Loopbackdevice zu realisieren, rate ich dringend davon ab und verweise auf die folgende Methode.
Linux 2.6
Die bessere Methode um eine Verschlüsselung unter Linux 2.6 zu realisieren ist der Device-mapper. Die Implementation ist wesentlich sauberer und unterstützt (bis jetzt) alle filesystems, auch die "Journaled file systems". Es sollte allerdings eine Kernelversion von mindestens 2.6.4 verwendet werden. Empfohlen ist jedoch eine Kernelversion ab 2.6.10.
...more will come
Praktikum für:
Mit Linux 2.6 einzelne Partitionen verschlüsseln
Es sollte sich beim Kernel mindestens um die Version 2.6.10 handeln, da dort und schon früher verschiedene Bugs gefixt wurden.
Wir haben, sagen wir mal, unsere /home Partion auf /dev/hda6 und natürlich root-Rechte.
Wir machen ein simples backup von home.
% tar -cvvjf home.tar.bz2 /home/
Partition unmounten...
% umount /home/
Festplatte mit Schroot füllen
% wipe -qk /dev/hda6
Damit wird die Festplatte aus /dev/random 4 Mal überschieben.
Wir müssen nun den Key und den Passphrase festlegen. Es gibt mehrer Möglichkeiten dies zu tun. Die einfachste Möglichkeit, ist den Key im Partitionsheader festzulegen, und einen Passphrase um ihn freizuschalten.
% cryptsetup create homepartition /dev/hda6
Jetzt müssen wir einen Passphrase eingeben. Beim erstellen sollten man jedoch die Option -y verwenden, welche veranlasst, dass man das Password zweimal eingeben muss.
% cryptsetup -y create homepartition /dev/hda6
All dies erstellt ein virutelles Blockdevice, nämlich /dev/mapper/homepartition. Sollte man das Password allerdings zweimal falsch eingegeben haben, wird das Device auch erstellt. dann muss man das device wieder löschen.
% cryptsetup remove homepartition /dev/hda6
Sollten wir allerdings den Passphrase richtig eingegeben haben, können wir jetzt ein Dateiensystem auf dem virtuellen Blockdevice erstellen.
% mkfs.ext3 /dev/mapper/homepartition
Dann können wir unsere neue home-Partition mounten.
% mount /dev/mapper/homepartition /home/
...soweit erster Teil
- Rootfs verschlüsseln (ganze Festplatte zubetonieren)
Sollte man wirklich an einem Praktikum teilnehen wollen, empfiehlt es sich sehr stark ein Backup seiner zu verschlüssenen Daten anzulegen.
Probleme / Insecurity von Algorythmen / Diskussion
More todo