Schon vor einem Jahr war ich von Arch Linux absolut begeistert als ich mein NAS mit diesem Linux-Derivat aufsetzte. Durch die Arch Linux Install-HowTo von Voku (suckup_de) ist die Liebe zu dieser Distribution wieder neu entfacht! Mit diesem Artikel möchte ich Voku’s Arch Howto um ein verschlüsseltes Logical Volume (/, /home & swap) erweitern.
Nach dem Punkt 2 „die Shell“ werden wir erstmal die gewünschte Festplatte mit „fdisk“ partitionieren, in meinem Fall „/dev/sda„.
Ich habe …
/dev/sda1 – 100 MB – für /boot
/dev/sda2 – den Rest – für LVM
… geplant.
fdisk -l /dev/sda Platte /dev/sda: 320.1 GByte, 320072933376 Byte 255 Köpfe, 63 Sektoren/Spur, 38913 Zylinder, zusammen 625142448 Sektoren Einheiten = Sektoren von 1 × 512 = 512 Bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x54eb3fb7 Gerät boot. Anfang Ende Blöcke Id System /dev/sda1 * 63 224909 112423+ 83 Linux /dev/sda2 224910 625137344 312456217+ 83 Linux
Verschlüsselung
Aus Sicherheitsgründen ist empfehlenswert die Partition ein mal mit Zufallszahlen zu überschreiben, vor allen Dingen, wenn auf dieser vorher unverschlüsselte Daten gespeichert waren. Ansonsten sind unter Umständen viele Dateien nach dem Verschlüsseln noch auslesbar. (http://wiki.ubuntuusers.de/LUKS#Erstellen)
„shred -vz /dev/sda2“ löscht /dev/sda2 – 3 mal mit Zufallswerten und 1 mal mit Nullen
Jetzt laden wir das benötigte Kernel-Modul für unsere Verschlüsselung, …
modprobe dm-crypt
… im Anschluss verschlüsseln wir unser /dev/sda2 und legen das gewünschte Entschlüsselungspasswort fest, …
cryptsetup -c aes-xts-plain -y -s 512 luksFormat /dev/sda2
… mit …
cryptsetup luksOpen /dev/sda2 lvm
… öffnen wir die verschlüsselte Partition und mounten diese nach /dev/mapper/lvm.
Logical Volume Manager
Nachdem wir die Verschlüsselung angelegt haben, müssen wir nun das LVM erstellen …
# Physical Volume anlegen pvcreate /dev/mapper/lvm # Volume Group "lvm" anlegen vgcreate main /dev/mapper/lvm
… und nun die Logical Volumes.
# 20 GB für "/" aus der VG "main" lvcreate -L 20GB -n root main # 8 GB für den "swap" aus der VG "main" - warum 8 GB, man sollte immer den RAM 2x nehmen lvcreate -L 8GB -n swap main # den Rest (x GB) aus der VG "main" für "/home" lvcreate -l 100%FREE -n home main
Nun können wir mit Punkt 3 „Start der Installation“ weiter machen.
Installation „Prepare Hard Drive“
Den Punkt 6 „Festplatten vorbereiten“ aus der HowTo ersetzen wir komplett! Da wir unsere Festplatte bzw. unsere Logical Volumes schon partitioniert haben, müssen wir für diese nur noch die Mountpoints festlegen und die LVs formatieren – dazu wählen wir „Manually Configure block devices, filesystems and mountpoints„.
Installation „Configure System“
Bei Punkt 9 „Grundsystem konfigurieren“ müssen wir nur zusätzliche Änderungen, aufgrund der Nutzung des verschlüsseltem LVMs, vornehmen.
/etc/rc.conf
USELVM=”yes”
/etc/mkinitcpio.conf
HOOKS="base udev autodetect pata scsi sata usb usbinput keymap encrypt lvm2 filesystems"
Installation „Install Bootloader“
Punkt 10 „der Bootloader (GRUB)“ installieren wir nach Voku’s Anleitung, jedoch müssen wir noch die menu.lst bearbeiten.
# (0) Arch Linux title Arch Linux root (hd0,0) kernel /vmlinuz26 cryptdevice=/dev/sda2:main root=/dev/mapper/main-root ro lang=de locale=de_DE.UTF-8 initrd /kernel26.img # (1) Arch Linux title Arch Linux Fallback root (hd0,0) kernel /vmlinuz26 cryptdevice=/dev/sda2:main root=/dev/mapper/main-root ro lang=de locale=de_DE.UTF-8 initrd /kernel26-fallback.img
Nun können wir ganz normal bei Punkt 11 „Installation beenden“ auf suckup.de weiter machen.
Ich hoffe das diese kleine Ergänzung dem ein oder anderen inspiriert bzw. weitergeholfen hat. 😉
Quellen:
Arch Linux – Installation – suckup.de
Offizielle Arch Linux Installations-Anleitung
Arch Linux – Festplatte verschlüsseln – wiki.archlinux.de
Das ist kontraproduktiv.
Denn, wenn man eine Platte mit nullen überschreibt, ist es für Forsensiker leichter anhand der freien unbeschriebenen Bereiche, auf den Bereich der Nutzdaten zu schliessen und entsprechend weiter zu forschen.
Sinn macht der Shred Befehl nur, wenn man es beim zufälligen Muster beläst.
Auch ein einfaches Überschreiben reicht. Das mehrfache Überschreiben ist ein Relikt aus den Computeranfängen und nicht mehr notwendig.
Hi bed, Danke für den Hinweis.
LOL … ihr seid mir vllt alles n paar fritzen
seit jahren heule ich rum, dass arch das bessere linux is und nu posted ihr schon selber install-howto’s im ubuntuusers-planet … ubuntu is sooo tot …
Nach dem ich diesen Aufwand für eine einfache Installation gesehen habe -> suckup.de
Weiss ich, dass ich niemals Archlinux nutzen werde.
Ich weiss man sollte niemals nie sagen, aber hier halte ich es für angebracht.
… Arch Linux funktioniert dafür so wie man es möchte! 🙂
Perfekt, danke!
Noch ein kleiner Verbesserungshinweis: „Den Punkt 6 “Festplatten vorbereiten” aus der HowTo ergänzen wir komplett!“ – Du meinst damit „ersetzen“, nicht „ergänzen“, oder?
Dank dieser Anleitung läuft’s nun bei mir.
Gerne, richtig ich habe es mal geändert. 🙂
Also ich habe die Prozedur jetzt 2 mal gemacht und jedesmal wenn ich fertig bin und neustarte sagt er
error: no such partition
grub rescue>
ps: er fragt mich auch nicht nach dem Passwort
Hi Peter,
da ist irgendetwas in der Grub „menu.lst“ falsch.
Wie sieht diese bei dir aus?
Grüße
Nico
Hi!
Gibt es auch eine Moeglichkeit, ohne selber ewig in der initrd rumzubasteln, root mittels einer Schluesseldatei zu verschluessel, welche selber mit einem Kennwort mittel gnupg oder openssl verschluesselt ist? So dass ich also einen USB-Speicher mit der (verschluesselten) Datei UND die Kenntnis des Kennwortes fuer eben diese Datei brauche um an die Notebookplattendaten zu kommen.
Danke!
Moin Moin
Ich versuche gerade nach einer Anleitung ein Arch Linix verschlüsselt auf einen USB Stick zu installieren. Oben fehlt bei Punkt 3 der Startbefeht welcher nach meiner Recherche /arch/setup ist.
Leider hakt es da etwas bei mir und ich bekomme die 2x die Meldung
FATAL: Module aes-i586 not found gefolgt von
ERROR: $5 is set to Procedure ? We don t use $5, maybe you still need to update your code to the new api (all debug categories in $4)
Ich nutze die aktuelle 64 Bit Netinstal CD … mache ich was falsch oder spinnt der Installer?
Sry für den ersten Post hier die Fehler bereinigte Fassung 🙂
Moin Moin
Ich versuche gerade nach Deiner Anleitung ein Arch Linux verschlüsselt auf einen USB Stick zu installieren. Oben fehlt bei Punkt 3 der Startbefehl welcher nach meiner Recherche /arch/setup ist.
Leider hakt es da etwas bei mir und ich bekomme 2x die Meldung
FATAL: Module aes-i586 not found gefolgt von
ERROR: $5 is set to Procedure ? We don t use $5, maybe you still need to update your code to the new api (all debug categories in $4)
Ich nutze die aktuelle 64 Bit Netinstal CD … mache ich was falsch oder spinnt der Installer?
Hi Ford, bei Punkt 3 – in der HowTo von Voku – steht doch „/arch/setup“. 😉
Wann bekommst du die Meldung? Kommt die Meldung beim Booten, beim Installieren, beim CryptSetup, beim …?
Gruß Nico
Die Meldung kam nachdem /arch/setup eingegeben habe um „Prepare Harddrive“ auszuführen. Die Lösung war wie ich jetzt herausgefunden habe das der Snapshot den ich verwendet hatte fehlerhaft war. Mit der 19.08 2011er Version ging es dann weiter und jetzt stehe ich bei „Configure System“
Bei etc/mkinitcpio.conf steht am Ende lv?2 dank des SyntaxHighlighters …grml wahrscheinlich soll das lvm2 heissen. Doofes Tool.
Dann rätsel ich noch beim Punkt Install Bootloader ob das noch aktuell ist weil kernel /vmlinuz26 wie ich vermute sich auf den Kernel 2.6 bezieht aber bei mir der 3.x Kernel zum Einsatz kam.
Ich versuche ja viel für mich herauszufinden aber das ist dann etwas zu speziell für meine Konsolen und Linux Syntax Kenntnisse.
Hi Ford, da hast du recht – ab Kernel-Version 3 ist es.
[code]kernel /vmlinuz-linux[/code]
Beim Bearbeiten von menu.lst geht es ja nur um cryptdevice=, root=, lang= und locale= der Rest bleibt ja immer so wie es das Setup vorschlägt.
Gruß Nico