Dm-crypt

Aus wiki.archlinux.de
An diesem Artikel arbeitet gerade jemand. Um Bearbeitungskonflikte zu vermeiden, warte bitte mit Änderungen, bis diese Markierung entfernt ist, oder kontaktiere den Bearbeiter ({{{1}}}).


Festplatte verschlüsseln

Hier soll es darum gehen, die Festplatte komplett zu verschlüsseln. Das heißt die komplette root- und die komplette home-Partition werden verschlüsselt und beim starten des Systems automatisch eingebunden.

Zu allererst sollte von der ArchLinux-Installations-CD gebootet werden und evtl. das Tastaturlayout auf deutsch umgestellt werden.

1. Partitionslayout festlegen

Die Festplatte sollte für alle folgenden Schritte folgendermaßen partitioniert sein:

  /dev/hda1 -> /boot (ca. 100 MB)
  /dev/hda2 -> swap (je nach Größe des Arbeitsspeichers, bei mir 512 MB)
  /dev/hda3 -> /
  /dev/hda4 -> /home

Die Größe der einzelnen Partitionen kann variieren.

2. Crypto-Devices anlegen

Als nächstes legen wir unsere Crypto-Devices an.

Für die root-Partition:

  # cryptsetup luksFormat /dev/hda3 --cipher aes-cbc-essiv:sha256 --verify-passphase --key-size 256
  Passwort zweimal eingeben. 
  ACHTUNG: Das Passwort sollte ausreichend lang sein, also mindestens 16 stellig. 
  # mkdir /mnt/root
  # cryptsetup luksOpen /dev/hda3 root
  Passwort eingeben
  Formatieren der Partition mit ext3: mke2fs -j /dev/mapper/root
  # mount /dev/mapper/root /mnt/root

Für die home-Partition wollen wir kein extra Passwort verwenden, sondern ein Keyfile. Dieses erzeugen wir uns mittels /dev/urandom

  # mkdir /mnt/root/crypto
  # dd if=/dev/urandom of=/mnt/root/crypto/home.key bs=1k count=2
  # cryptsetup luksFormat /dev/hda4 --cipher aes-cbc-essiv:sha256 --key-size 256 --key-file /mnt/root/crypto/home.key
  # cryptsetup luksOpen /dev/hda4 home
  Passwort eingeben
  Formatieren der Partition mit ext3: mke2fs -j /dev/mapper/home
  # mount /dev/mapper/home /mnt/root/home

3. ArchLinux installieren

Zu allererst kopieren wir alle wichtigen Dateien für das System auf unsere neue verschlüsselte root-Partition.

  # /arch/quickinst ftp /mnt/root ftp://ftp.archlinux.org/current/os/i586

Jetzt muss noch ein Kernel für das neue System installiert werden.

  # /tmp/usr/bin/pacman.static -r /mnt --config /tmp/pacman.conf -S kernel26

Und damit wir das System nachher auch bequem starten können ein Bootloader, in diesem Fall Grub.

  # mount -o bind /dev /mnt/root/dev
  # mount -o bind /proc /mnt/root/proc
  # mount -o bind /sys /mnt/root/sys
  # chroot /mnt/root /bin/bash
   ... editieren der menu.lst ...
  # install-grub /dev/hda

4. Konfigurations anpassen

  ...

5. Aufräumen & Neustarten

  # umount /mnt/root/boot /mnt/root/home /mnt/root
  # cryptsetup luksClose root
  # cryptsetup luksClose home
  # rm -r /mnt/root
  # shutdown -r now