Cómo instalar Debian en un contenedor de Luks existente

Cómo instalar Debian en un contenedor de Luks existente

Luks (configuración de teclas unificadas de Linux) es el método de cifrado estándar de facto utilizado en los sistemas basados ​​en Linux. Si bien el instalador de Debian es perfectamente capaz de crear un contenedor de Luks, carece de la capacidad de reconocer y, por lo tanto, reutilizar uno ya existente. En este artículo vemos cómo podemos solucionar este problema usando el instalador "DVD1" y ejecutarlo en modo "avanzado".

En este tutorial aprenderás:

  • Cómo instalar Debian en "Modo avanzado"
  • Cómo cargar el instalador módulos adicionales necesarios para desbloquear un dispositivo Luks existente
  • Cómo realizar la instalación en un contenedor de Luks existente
  • Cómo agregar una entrada en el archivo CryptTab del sistema recién instalado y regenerar sus initramfs
Cómo instalar Debian en un contenedor de Luks existente

Requisitos y convenciones de software utilizados

Requisitos de software y convenciones de línea de comandos de Linux
Categoría Requisitos, convenciones o versión de software utilizada
Sistema Debian
Software No se necesita software específico
Otro El instalador de DVD de Debian
Convenciones # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
$-Requiere que los comandos de Linux dados se ejecuten como un usuario regular no privilegiado

El problema: reutilizar un contenedor de Luks existente

Como ya dijimos, el instalador de Debian es perfectamente capaz de crear e instalar la distribución en un contenedor de Luks (una configuración típica es LVM en Luks), sin embargo, actualmente no puede reconocer y abrir un ya existente
uno; Por qué necesitaríamos esta característica? Supongamos, por ejemplo, ya creamos un contenedor de Luks manualmente, con una configuración de cifrado que no se puede ajustar desde el instalador de distribución, o imaginamos que tenemos un volumen lógico dentro del contenedor que no queremos destruir (tal vez contiene algunos datos); Al usar el procedimiento estándar del instalador, nos vería obligados a crear un nuevo contenedor de Luks, y así destruir el existente. En este tutorial veremos cómo, con pocos pasos adicionales, podemos solucionar este problema.

Descargar el instalador de DVD

Para poder realizar las acciones descritas en este tutorial, debemos descargar y usar el instalador de DVD de Debian, ya que contiene algunas bibliotecas que no están disponibles en el netinstall versión. Para descargar la imagen de instalación a través de torrent podemos usar uno de los enlaces a continuación, dependiendo de la arquitectura de nuestra máquina:

  • De 64 bits
  • De 32 bits


De los enlaces de arriba podemos descargar los archivos torrent que podemos usar para obtener la imagen del instalador. Lo que tenemos que descargar es el Dvd1 archivo. Para obtener el ISO de instalación, debemos usar un cliente torrent como Transmisión. Una vez que se descarga la imagen, podemos verificarla verificar descargando el correspondiente Sha256sum y Sha256sum.firmar archivos y siga este tutorial sobre cómo verificar la integridad de una imagen ISO de distribución de Linux. Cuando están listos, podemos escribir la imagen en un soporte que se puede usar como un dispositivo de arranque: un (DVD o USB) y arrancar nuestra máquina a partir de ella.

Usando el modo de instalación avanzado

Cuando iniciamos la máquina con el dispositivo que preparamos, debemos visualizar lo siguiente syslinux menú:

Seleccionamos el Opciones avanzadas entrada, y luego Instalación de expertos gráficos (o Instalación de expertos Si queremos usar el instalador basado en NCurses, que usa menos recursos):

Una vez que seleccionemos y confirmemos la entrada del menú, el instalador comenzará y visualizaremos la lista de los pasos de instalación:

Seguimos los pasos de instalación hasta que llegamos al Cargar componentes del instalador desde CD uno. Aquí tenemos el cambio para seleccionar las bibliotecas adicionales que deben cargar el instalador. El mínimo que queremos seleccionar de la lista es Módulos cripto-dm y el modo de rescate (Desplácese hacia abajo en la lista para verlo):

Desbloquear manualmente el contenedor de Luks existente y dividir el disco

En este punto podemos continuar como de costumbre hasta que llegemos al Detectar discos paso. Antes de realizar este paso necesitamos cambiar a un tty y abra el contenedor Luks existente desde la línea de comandos. Para hacer esto, podemos presionar el CTRL+ALT+F3 Combinación de teclas y prensa Ingresar Para obtener un aviso. Desde el aviso, abrimos el dispositivo LUKS iniciando el siguiente comando:

# cryptsetup luksopen /dev /vda5 cryptdevice Ingrese la frase de pass para /dev /vda5: 

En este caso, el dispositivo Luks se estableció previamente en el /dev/vda5 Partición, por supuesto, debe adaptar esto a sus necesidades. Se nos pedirá que ingresemos el pashprase para el contenedor para desbloquearlo. El nombre mapeador del dispositivo que usamos aquí (cryptdevice) es lo que necesitaremos usar más adelante en el /etc/crypttab archivo.

Una vez que se realiza este paso, podemos volver al instalador (CTRL+ALT+F5) y proceda con el Detectar discos Y luego con Disco de partición pasos. En el Disco de partición Menú seleccionamos la entrada "Manual":



El dispositivo Luks desbloqueado y los volúmenes lógicos contenidos en él deben aparecer en la lista de las particiones disponibles, listas para ser utilizadas como objetivos para la configuración de nuestro sistema. Una vez que estemos listos, podemos continuar con la instalación hasta llegar a la Terminar la instalación paso. Antes de realizarlo, necesitamos crear una entrada en el sistema recién instalado cripttab para el dispositivo LUKS, ya que no se crea de forma predeterminada, y recree los initramfs del sistema para que el cambio sea efectivo.

Creación de una entrada en /etc /crypttab y recreando los initramfs

Volvamos al tty Usamos antes (CTRL+ALT+F3). Lo que debemos hacer ahora es agregar manualmente una entrada en el /etc/crypttab Archivo del sistema recién instalado para el dispositivo Luks. Para hacer eso, debemos montar la partición raíz del nuevo sistema en algún lugar (usemos el /MNT directorio) y monte algunos pseudo-archivos sistemas que proporcionan información importante sobre los directorios apropiados dentro de él. En nuestro caso, el sistema de archivos raíz está en el /dev/debian-vg/root Volumen lógico:

# Mount /Dev /Debian-Vg /Root /Mnt # Mount /Dev /Mnt /Dev # Mount /Sys /Mnt /Sys # Mount /Proc /Mnt /Proc 

Dado que en este caso tenemos una partición de arranque separada (/dev/vda1), también necesitamos montarlo /mnt/boot:

# monte /dev /vda1 /mnt /boot 

En este punto debemos croote En el sistema instalado:

# chroot /mnt 

Finalmente, podemos abrir el /etc/crypttab Archivo con uno de los editores de texto disponibles (VI por ejemplo), y agregue la siguiente entrada:

cryptdevice /dev /vda5 none luks 

El primer elemento en la línea de arriba es el nombre del mapeador del dispositivo que usamos anteriormente cuando desbloqueamos el contenedor LUKS manualmente; se usará cada vez que se abra el contenedor durante el arranque del sistema.

El segundo elemento es la partición que se usa como dispositivo Luks (en este caso lo hacemos referencia por ruta (/dev/vda5), pero una mejor idea sería hacer referencia a él a través de Uuid).

El tercer elemento es la ubicación del archivo clave utilizado para abrir el contenedor: aquí ponemos ninguno Como no usamos uno (siga nuestro tutorial sobre cómo usar un archivo como clave de dispositivo Luks si desea saber cómo lograr este tipo de configuración).

El último elemento en la línea aloja las opciones que deben usarse para el dispositivo cifrado: aquí acabamos de usar Luks Para especificar que el dispositivo es un contenedor de Luks.

Una vez que actualizamos el /etc/crypttab archivo, podemos continuar y regenerar el initramfs. Sobre las distribuciones de Debian y Debian, para realizar esta acción usamos el actualización-initramfs dominio:

# Actualizar iniTramfs -k All -C 


Aquí usamos el -C opción para instruir al comando para crear un nuevo initRAMFS en lugar de actualizar uno existente, y -k para especificar para qué kernel se debe crear el initramfs. En este caso pasamos todo como argumento, se generará uno para cada kernel existente.

Una vez que se genera el initRAMFS, volvemos al instalador (CTRL+ALT+F5) y continúe con el último paso: Terminar la instalación. Cuando la instalación se nos solicitaremos el reinicio para acceder al sistema recién instalado. Si todo salió como se esperaba, durante el arranque del sistema, se nos debe pedir que ingresemos a la frase de pases para desbloquear el contenedor de Luks:

Conclusiones

En este tutorial, aprendimos a solucionar una limitación del instalador Debian que no es capaz de reconocer y abrir un contenedor de Luks existente para realizar la instalación del sistema dentro de él. Aprendimos a usar el instalador en "modo avanzado" para poder cargar algunos módulos adicionales que nos permiten desbloquear el contenedor manualmente cambiando a un TTY. Una vez que se abre el contenedor, el instalador reconoce correctamente y se puede usar sin problemas. La única parte difícil de esta configuración es que debemos recordar crear una entrada para el contenedor en el sistema recién instalado cripttab archivo y actualizar su initRAMFS.

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Cómo encontrar archivos grandes en Linux
  • Cómo usar un archivo como clave de dispositivo Luks
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Cifrado de disco completo con Veracrypt en Ubuntu Linux
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Cómo desbloquear un volumen de Luks en el arranque en Raspberry Pi OS
  • Cosas para instalar en Ubuntu 22.04
  • Cómo usar luks con un encabezado separado
  • Mint 20: Mejor que Ubuntu y Microsoft Windows?