Cómo convertir un EBS sin cifrar para que se cifre

18

Tengo varios volúmenes EBS anteriores que no están encriptados. Para satisfacer las nuevas medidas de seguridad corporativa, todos los datos deben "cifrarse en reposo", por lo que debo convertir todos los volúmenes para cifrarlos.

Cuál es la mejor manera de lograr esto?

gris
fuente

Respuestas:

37

Es posible copiar una instantánea EBS sin cifrar en una instantánea EBS cifrada. Entonces se puede usar el siguiente proceso:

  1. Detenga su instancia EC2.
  2. Cree una instantánea de EBS del volumen que desea cifrar.
  3. Copie la instantánea EBS, encriptando la copia en el proceso.
  4. Cree un nuevo volumen EBS a partir de su nueva instantánea EBS cifrada. El nuevo volumen de EBS se cifrará.
  5. Separe el volumen EBS original y adjunte su nuevo volumen EBS cifrado, asegurándose de que coincida con el nombre del dispositivo (/ dev / xvda1, etc.)
Matt Houser
fuente
1
Guau. No lo sabía mate. Bueno uno
Gray
2
Solo para ser pedante, haga clic en la instantánea sin cifrar, tire hacia abajo para copiar y haga clic en el botón cifrar para cifrar la copia.
Gris
44
Una pequeña trampa. Asegúrese de que su instancia también sea compatible con EBS cifrado. Es posible que estés en una instancia que no lo hace. Pero es solo cuestión de detener la instancia y luego cambiar el tipo.
Dave Beer el
Por alguna razón, después de hacer esto, el volumen cifrado SOLO se montará como solo lectura ...
Douglas Gaskell
Tú, hombre, eres el HOMBRE.
aran
0

[[Esta no es la respuesta correcta y no cómo hacemos las cosas ahora, pero lo dejaré aquí en caso de que alguien más encuentre alguna utilidad para hacerlo de la "manera difícil". ]]

El siguiente proceso funcionó bien para convertir nuestros volúmenes EBS existentes en volúmenes cifrados.

  • Cree un volumen del mismo tamaño exacto y en la misma zona de disponibilidad que el volumen sin cifrar pero con el cifrado habilitado. Si el volumen anterior se llama "XYZ", nombre el nuevo volumen como "Nuevo XYZ" para que no pierda la noción del mismo. Estamos utilizando las claves de cifrado de AWS predeterminadas, pero hay otras opciones en los documentos de EBS .
  • Inicie una instancia de Linux temporal como la máquina convertidora en la misma zona de disponibilidad que el volumen. Cualquier instancia de cualquier tamaño funcionará, aunque las instancias optimizadas de EBS pueden completar la migración más rápido.
  • Apague la instancia con el volumen actual sin cifrar.
  • Separe el volumen sin cifrar de la instancia.
  • Adjunte el volumen sin cifrar a la instancia del convertidor. Observe el dispositivo en el que el cuadro de diálogo adjunto dice que se está montando. El primer volumen adicional debería ser algo así /dev/sdf.
  • Adjunte el nuevo volumen cifrado que acaba de crear también a la instancia del convertidor. El segundo volumen adicional probablemente será /dev/sdg.
  • Inicie sesión en la instancia del convertidor como root o como usuario con acceso sudo.
  • Si mira el /proc/diststatsarchivo, en la parte inferior debería ver algo parecido xvdfy xvdgque corresponde a las particiones adicionales adjuntas. Los nombres pueden ser diferentes dependiendo de la variante / versión del kernel de Linux que esté utilizando. Si tiene alguna pregunta, puede verificar el /proc/diststatsarchivo antes de adjuntarlo para ver qué particiones se agregan.

    ...
    # 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
    
  • Ejecute el siguiente ddcomando para copiar desde el volumen sin cifrar de origen al volumen cifrado de destino. ADVERTENCIA: este comando puede ser extremadamente destructivo. Tome su tiempo. Verifique dos veces, corte una vez. Haz que alguien mire por encima de tu hombro. Esto te ayudará a tirar basura a tus datos. ¡Tengamos cuidado allá afuera!

    # 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
    
  • Espere a que termine el comando dd y regrese al símbolo del sistema. En nuestros casos, un disco de 16 gb tomó ~ 5 minutos para que pueda hacer los cálculos con un tamaño mayor. Su experiencia puede ser diferente.
  • Separe los volúmenes cifrados nuevos y no cifrados de la instancia del convertidor.
  • Adjunte el nuevo volumen encriptado a la instancia que estaba usando el volumen sin encriptar antes e inícielo.
  • Cuando surja, haga lo que necesita hacer para validar que el sistema se ve bien.
  • Cambie el nombre del volumen de "XYZ" a "Old XYZ". Cambie el nombre de "Nuevo XYZ" a "XYZ". Deje el volumen "Old XYZ" en caso de que necesite revertir si hubo problemas.
gris
fuente