Konvertieren eines unverschlüsselten EBS zur Verschlüsselung

18

Ich habe eine Reihe älterer EBS-Volumes, die nicht verschlüsselt sind. Um die neuen Sicherheitsmaßnahmen des Unternehmens zu erfüllen, müssen alle Daten im Ruhezustand "verschlüsselt" werden, sodass ich alle zu verschlüsselnden Volumes konvertieren muss.

Was ist der beste Weg, um dies zu erreichen?

Grau
quelle

Antworten:

37

Es ist möglich, einen unverschlüsselten EBS-Snapshot in einen verschlüsselten EBS-Snapshot zu kopieren. So kann das folgende Verfahren angewendet werden:

  1. Stoppen Sie Ihre EC2-Instanz.
  2. Erstellen Sie einen EBS-Snapshot des Volumes, das Sie verschlüsseln möchten.
  3. Kopieren Sie den EBS-Snapshot und verschlüsseln Sie dabei die Kopie.
  4. Erstellen Sie ein neues EBS-Volume aus Ihrem neuen verschlüsselten EBS-Snapshot. Das neue EBS-Volume wird verschlüsselt.
  5. Trennen Sie das ursprüngliche EBS-Volume und hängen Sie das neue verschlüsselte EBS-Volume an. Achten Sie dabei darauf, dass der Gerätename (/ dev / xvda1 usw.) übereinstimmt.
Matt Houser
quelle
1
Wow. Wusste nicht, dass matt. Gut
Grau
2
Um pedantisch zu sein, klicken Sie auf den unverschlüsselten Schnappschuss, ziehen ihn zum Kopieren nach unten und klicken auf die Schaltfläche zum Verschlüsseln, um die Kopie zu verschlüsseln.
Gray
4
Ein bisschen Gotcha. Stellen Sie sicher, dass Ihre Instanz auch verschlüsseltes EBS unterstützt. Möglicherweise befinden Sie sich in einer Instanz, die dies nicht tut. Es geht jedoch nur darum, die Instanz zu stoppen und dann den Typ zu ändern.
Dave Beer
Aus irgendeinem Grund wird das verschlüsselte Volume danach NUR als schreibgeschützt bereitgestellt ...
Douglas Gaskell,
Du, Mann, bist der MANN.
26.
0

[[Dies ist nicht die richtige Antwort und nicht, wie wir die Dinge jetzt machen, aber ich werde dies hier belassen, falls jemand anderes einen Nutzen findet, um es auf die "harte Tour" zu machen. ]]

Der folgende Prozess hat für uns gut funktioniert, um unsere vorhandenen EBS-Volumes in verschlüsselte Volumes zu konvertieren.

  • Erstellen Sie ein Volume mit derselben exakten Größe und Verfügbarkeitszone wie das unverschlüsselte Volume, jedoch mit aktivierter Verschlüsselung. Wenn das alte Volume "XYZ" heißt, benennen Sie das neue Volume als "New XYZ", damit Sie den Überblick nicht verlieren. Wir verwenden die Standard-AWS-Verschlüsselungsschlüssel, aber es gibt andere Optionen in den EBS-Dokumenten .
  • Booten Sie eine temporäre Linux-Instanz als Konvertierungscomputer in der gleichen Verfügbarkeitszone wie das Volume. Wirklich jede Instanz kann verwendet werden, obwohl EBS-optimierte Instanzen die Migration möglicherweise schneller abschließen.
  • Fahren Sie die Instanz mit dem aktuellen unverschlüsselten Volume herunter.
  • Trennen Sie das unverschlüsselte Volume von der Instanz.
  • Hängen Sie das unverschlüsselte Volume an die Konverterinstanz an. Beobachten Sie das Gerät, auf dem das Dialogfeld "Anhängen" anzeigt, dass es gemountet wird. Das erste zusätzliche Volume sollte ungefähr so ​​aussehen /dev/sdf.
  • Hängen Sie das neue verschlüsselte Volume, das Sie gerade erstellt haben, auch an die Konverterinstanz an. Der zweite zusätzliche Band wird wahrscheinlich sein /dev/sdg.
  • Melden Sie sich bei der Konverterinstanz als root oder als Benutzer mit sudo-Zugriff an.
  • Wenn man sich die aussehen /proc/diststatsDatei, an der Unterseite sollten Sie etwas sehen , xvdfund xvdgwelche die beigefügten zusätzliche Partitionen. Die Namen können je nach verwendeter Linux-Kernel-Variante / -Version unterschiedlich sein. Wenn Sie Fragen haben, können Sie die /proc/diststatsDatei vor dem Anhängen überprüfen , um festzustellen, welche Partitionen hinzugefügt wurden.

    ...
    # root partition
    202       1 xvda1 187267 4293 12100842 481972 52550 26972 894168 156944 0 150548 ...
    # swap partion
    202      16 xvdb 342 10 2810 8 5 1 48 12 0 20 20
    # first attached drive, corresponds to /dev/xvdf
    202      80 xvdf 86 0 688 28 0 0 0 0 0 28 28
    # second attached drive, corresponds to /dev/xvdg
    202      96 xvdg 86 0 688 32 0 0 0 0 0 32 32
    
  • Führen Sie den folgenden ddBefehl aus, um das unverschlüsselte Quellvolume auf das verschlüsselte Zielvolume zu kopieren. WARNUNG: Dieser Befehl kann äußerst zerstörerisch sein. Lass dir Zeit. Überprüfen Sie zweimal, schneiden Sie einmal. Lass dir jemanden über die Schulter schauen. Diese helfen Ihnen dabei, Ihre Daten nicht in den Papierkorb zu werfen. Seien wir vorsichtig da draußen!

    # using a block-size of 16k (a guess), copy from input-file (if) to output-file (of)
    dd bs=16k if=/dev/xvdf of=/dev/xvdg
    
  • Warten Sie, bis der Befehl dd beendet ist, und kehren Sie zur Eingabeaufforderung zurück. In unseren Fällen hat eine 16-GB-Festplatte ~ 5 Minuten gedauert, sodass Sie mit einer größeren Festplatte rechnen können. Ihr Kilometerstand kann variieren.
  • Trennen Sie sowohl das unverschlüsselte als auch das neue verschlüsselte Volume von der Konverterinstanz.
  • Hängen Sie das neue verschlüsselte Volume an die Instanz an, die zuvor das unverschlüsselte Volume verwendet hat, und starten Sie es.
  • Wenn es soweit ist, tun Sie, was Sie tun müssen, um zu überprüfen, ob das System gut aussieht.
  • Benennen Sie das Volume von "XYZ" in "Altes XYZ" um. Benennen Sie "New XYZ" in "XYZ" um. Belassen Sie die "Old XYZ" -Lautstärke für den Fall, dass bei Problemen ein Zurücksetzen erforderlich ist.
Grau
quelle