Verschlüsselte benutzerdefinierte Installation

20

Auf meinem Computer läuft Ubuntu. Ich möchte Ubuntu auf einem anderen Medium installieren. Ich möchte die Verschlüsselung aktivieren, da die Standardauswahl des Ubuntu-Installers (Löschen / neben / etc ...) nur das Standardlaufwerk betrifft, muss ich "etwas anderes" auswählen und die Partitionen auf dem anderen Laufwerk manuell erstellen. Ich erstelle ~ 128 MB Part für den Start, dann bin ich verloren, wenn ich eine verschlüsselte Partition mit dem Rest des Speicherplatzes mache, kann ich sie nicht teilen, also habe ich keinen Swap; Wenn ich stattdessen zwei verschlüsselte Partitionen erstelle, scheint dies nicht richtig zu sein, da zwei verschiedene Passwörter eingerichtet werden sollen ...

Wie kann ich dann den Swap einrichten? (Während oder nach der Installation).

Yvain
quelle

Antworten:

28

Vorgehensweise mit LVM und einer einzelnen verschlüsselten Partition

Warnung

Zunächst einmal ist 128M zu klein für den Boot! Ich benutze 1G. Andernfalls kann es passieren, dass Sie vergessen, alte Kernel zu entfernen, und / boot füllt sich und Sie müssen sich mit dem Schmerz abfinden, alte Kernel aus dem System zu entfernen, damit Sie arbeiten aptoder apt-getarbeiten können nochmal. Stellen Sie auch mit 1G sicher, dass Sie von Zeit zu Zeit alte Kernel entfernen.

Die nächsten Schritte sind nicht für Anfänger gedacht.
UPDATE: Ich habe ein Skript erstellt , das die folgenden Vorgänge für Sie und mehr ausführt! Alles, was Sie tun müssen, ist, es vor der Installation über das Live-Betriebssystem auszuführen. Sie können einen Artikel auf meinem Blog finden .


Vorinstallation vom Live-Betriebssystem

Sie möchten LUKS und LVM während der manuellen Partitionierung einrichten! Ich habe das auf Ubuntu 16.04.2 getestet

Booten Sie Ubuntu von einem Live-Betriebssystem und wählen Sie die Option, Ubuntu ohne Installation zu testen. Befolgen Sie die unten beschriebenen Schritte. Nehmen wir an, Sie installieren nach / dev / sdb.

  1. Partitionieren Sie das Laufwerk mit dem Tool Ihrer Wahl: Ich habe fdisk verwendet, um meine auf einer MSDOS-Partitionstabelle wie folgt einzurichten:
    • andere Partitionen: vorhandene Betriebssysteme - diese interessieren uns nicht
    • sdb1: / boot (1G)
    • sdb2: LUKS-Partition (der Rest der Festplatte)
  2. Richten Sie LUKS ein
    • sudo cryptsetup luksFormat --hash=sha512 --key-size=512 --cipher=aes-xts-plain64 --verify-passphrase /dev/sdb2
    • sudo cryptsetup luksOpen /dev/sdb2 CryptDisk
    • Obwohl dies nicht erforderlich ist, ist es eine gute Idee, Ihre LUKS-Partition mit Nullen zu füllen, damit die Partition in einem verschlüsselten Zustand mit zufälligen Daten gefüllt wird. sudo dd if=/dev/zero of=/dev/mapper/CryptDisk bs=4M ACHTUNG, das kann sehr lange dauern!
  3. Richten Sie LVM auf / dev / mapper / CryptDisk ein
    • sudo pvcreate /dev/mapper/CryptDisk
    • sudo vgcreate vg0 /dev/mapper/CryptDisk
    • sudo lvcreate -n swap -L 2G vg0
    • sudo lvcreate -n root -L 10G vg0
    • sudo lvcreate -n home -l +100%FREE vg0

Installation vom Live-Betriebssystem

  1. Jetzt können Sie installieren. Wenn Sie zum Abschnitt "Installationstyp" der Installation gelangen, wählen Sie die Option "Etwas anderes". Weisen Sie dann manuell die Partitionen / dev / mapper / vg0- * zu, die Sie konfigurieren möchten. Vergessen Sie nicht, / dev / sdb1 als / boot zu setzen. Die / boot-Partition darf nicht verschlüsselt sein. Wenn ja, können wir nicht booten. Ändern Sie das "Gerät für die Bootloader-Installation" in "/ dev / sdb" und fahren Sie mit der Installation fort.
  2. Starten Sie nach Abschluss der Installation nicht neu ! Wählen Sie die Option "Continue Testing".

Konfiguration nach der Installation über das Live-Betriebssystem

Dieses Bit ist wirklich wichtig, wenn Sie möchten, dass Ihr System startet! Ich habe ziemlich viel Zeit damit verbracht, dies zu untersuchen, um diese Schritte nach der Installation herauszufinden. In meinem Fall habe ich es tatsächlich getan, weil ich die Größe von / boot auf / dev / sda anpassen wollte, aber all diese Arbeiten sollten sich auch auf Ihre Situation übertragen lassen.

  1. Geben Sie in einem Terminal Folgendes ein und suchen Sie nach der UUID von / dev / sdb2. Notieren Sie sich diese UUID für später.
    • sudo blkid | grep LUKS
    • Die wichtige Zeile auf meinem Computer lautet /dev/sdb2: UUID="bd3b598d-88fc-476e-92bb-e4363c98f81d" TYPE="crypto_LUKS" PARTUUID="50d86889-02"
  2. Als nächstes können Sie das neu installierte System wieder einbinden, damit wir weitere Änderungen vornehmen können.

    • sudo mount /dev/vg0/root /mnt
    • sudo mount /dev/vg0/home /mnt/home # Dies ist wahrscheinlich nicht erforderlich
    • sudo mount /dev/sdb1 /mnt/boot
    • sudo mount --bind /dev /mnt/dev # Ich bin mir nicht ganz sicher, ob dies notwendig ist
    • sudo mount --bind /run/lvm /mnt/run/lvm
    • (Nur wenn Sie EFI verwenden): sudo mount /dev/sd*/your/efi/partition /mnt/boot/efi
  3. Führen Sie nun aus, sudo chroot /mntum auf das installierte System zuzugreifen

  4. Bringen Sie von der Chroot noch ein paar Dinge an
    • mount -t proc proc /proc
    • mount -t sysfs sys /sys
    • mount -t devpts devpts /dev/pts
  5. Richten Sie crypttab ein. Erstellen Sie mit Ihrem bevorzugten Texteditor die Datei / etc / crypttab und fügen Sie die folgende Zeile hinzu, wobei Sie die UUID durch die UUID Ihrer Festplatte ersetzen.
    • CryptDisk UUID=bd3b598d-88fc-476e-92bb-e4363c98f81d none luks,discard
  6. Zuletzt erstellen Sie einige Boot-Dateien neu.
    • update-initramfs -k all -c
    • update-grub
  7. Starten Sie neu und das System sollte nach einem Passwort fragen, das beim Booten entschlüsselt werden soll!

Ein besonderer Dank geht an Martin Eve , EGIDIO DOCILE , und die Leute auf blog.botux.fr für die Tutorials, die sie gepostet haben. Indem ich Teile von ihren Posten zog und ein paar zusätzliche Fehlerbehebungen durchführte, konnte ich das endlich herausfinden.

Ich habe es einige Male versucht und bin immer wieder gescheitert. Das bisschen, das ich mir anhand von Fehlermeldungen erarbeiten musste, warsudo mount --bind /run/lvm /mnt/run/lvm

b_laoshi
quelle
Vielen Dank, aber ich stecke am Anfang fest, wo ich die luks-Partition einrichten muss. Kann es nicht in der Ausgabe von fdisk -L finden.
Yvain
Und wenn ich versuche, die Krypta einzurichten, erhalte ich eine Fehlermeldung: Header konnten nicht entfernt werden
Yvain
Ich sehe, Sie haben dies als Lösung markiert. Hast du es geschafft? Wenn nicht, mit welchem ​​Tool haben Sie Ihre Partitionen erstellt? Sie müssen die Festplatte zuerst mit einem Tool wie Gparted oder fdisk partitionieren, um eine Partition für / boot und eine für die Verschlüsselung zu erstellen (für EFI ist eine dritte nicht verschlüsselte Partition erforderlich). Ich habe EFI in meinem Setup nicht verwendet. Erst nachdem Sie die Partition für die Verschlüsselung erstellt haben, können Sie den cryptsetup luksFormatBefehl zum Verschlüsseln ausführen . Nach dem Erstellen von / dev / sdb2 können Sie es mit oder ohne Dateisystem formatieren. cryptsetuplöscht jedes vorhandene Dateisystem.
b_laoshi
1
@ Yvain - ich glaube das ist falsch. Sha1 gilt nicht mehr als sicher. Etwas sichereres (wie die vorgeschlagene sha512-Option) sollte auf jeden Fall verwendet werden.
Mike
1
+1 @b_laoshi Vielen Dank für die Antwort, es hilft mir sehr :)
Tummala Dhanvi
3

So erreichen Sie mehrere verschlüsselte Partitionen ohne LVM

Da meine vorherige Antwort so lang war, veröffentliche ich eine zweite Antwort, die einen anderen Ansatz verfolgt, wenn Sie LVM nicht verwenden möchten.

Sie können mehrere verschlüsselte Partitionen erstellen und das Skript decrypt_derived verwenden, sodass Sie das Kennwort nur einmal eingeben müssen. In diesem Blogbeitrag finden Sie schrittweise Anleitungen. Der Autor verwendet eine Schlüsseldatei, aber das Skript decrypt_derived LUKS würde ebenfalls ausreichen.

b_laoshi
quelle
Am Ende habe ich das Hauptlaufwerk vom Stromnetz getrennt, unterstützte Installationen stehen meinem SD zur Verfügung :) lol
Yvain
2

Eine Möglichkeit, diese Aufgabe zu erledigen, ist die Verwendung des Ubuntu-Netzwerkinstallationsprogramms https://www.ubuntu.com/download/alternative-downloads

Es ist kein grafisches Installationsprogramm. Es bietet Ihnen jedoch die explizite Auswahl der Festplatte, nachdem Sie die vollständige Festplatteninstallation mit Verschlüsselung ausgewählt haben.

ernstkl
quelle