GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo instalar Debian en un contenedor LUKS existente

LUKS (Linux Unified Key Setup) es el método de cifrado estándar de facto que se utiliza en los sistemas basados ​​en Linux. Si bien el instalador de Debian es perfectamente capaz de crear un contenedor 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 utilizando el instalador "DVD1" y ejecutándolo en modo "avanzado".

En este tutorial aprenderás :

  • Cómo instalar Debian en "modo avanzado"
  • Cómo cargar los módulos adicionales del instalador necesarios para desbloquear un dispositivo LUKS existente
  • Cómo realizar la instalación en un contenedor LUKS existente
  • Cómo agregar una entrada en el archivo crypttab del sistema recién instalado y regenerar su initramfs

Cómo instalar Debian en un contenedor LUKS existente

Requisitos de software y convenciones utilizadas

El problema:reutilizar un contenedor LUKS existente

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

Descargando el instalador de DVD

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

  • 64 bits
  • 32 bits

Desde 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 expediente. Para obtener la ISO de instalación, debemos usar un cliente torrent como Transmisión . Una vez descargada la imagen, podemos verificarla verificando descargando el SHA256SUM correspondiente y SHA256SUM.sign y siga este tutorial sobre cómo verificar la integridad de una imagen iso de distribución de Linux. Cuando esté listo, podemos escribir la imagen en un soporte que puede usarse como dispositivo de arranque:ya sea un (DVD o USB), y arrancar nuestra máquina desde allí.

Uso del modo de instalación avanzada

Cuando arranquemos la máquina usando el dispositivo que preparamos, deberíamos visualizar el siguiente syslinux menú:

Seleccionamos las Opciones avanzadas entrada y, a continuación, instalación experta en gráficos (o Instalación experta si queremos usar el instalador basado en ncurses, que usa menos recursos):

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

Seguimos los pasos de instalación hasta llegar al menú Cargar componentes del instalador desde CD uno. Aquí tenemos el cambio para seleccionar las bibliotecas adicionales que debe cargar el instalador. El mínimo que queremos seleccionar de la lista es Crypto-dm-modules y modo de rescate (desplácese hacia abajo en la lista para verlo):

Desbloquear manualmente el contenedor LUKS existente y particionar el disco

En este punto podemos proceder como de costumbre hasta que lleguemos a Detectar discos paso. Antes de realizar este paso, debemos cambiar a un tty y abra el contenedor LUKS existente desde la línea de comandos. Para ello, podemos pulsar la tecla Ctrl+Alt+F3 combinación de teclas y presione Enter para obtener un aviso. Desde el indicador, abrimos el dispositivo LUKS ejecutando el siguiente comando:

# cryptsetup luksOpen /dev/vda5 cryptdevice
Enter passphrase for /dev/vda5:

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

Una vez realizado este paso, podemos volver al instalador (Ctrl+Alt+F5 ) y continúe con Detectar discos y luego con Discos de partición pasos. En los discos de partición menú seleccionamos la entrada “Manual”:

El dispositivo LUKS desbloqueado y los volúmenes lógicos que contiene deberían aparecer en la lista de particiones disponibles, listos para ser utilizados como objetivos para la configuración de nuestro sistema. Una vez estemos listos podemos continuar con la instalación hasta llegar a la página Finalizar la instalación paso. Antes de realizarlo necesitamos crear una entrada en el sistema recién instalado crypttab para el dispositivo LUKS, ya que no se crea por defecto, y vuelva a crear el sistema initramfs para que el cambio sea efectivo.

Crear una entrada en /etc/crypttab y recrear initramfs

Volvamos a tty usamos antes (Ctrl+Alt+F3 ). Lo que debemos hacer ahora es agregar manualmente una entrada en /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 (utilicemos el /mnt directorio) y montar algunos pseudo-sistemas de archivos que proporcionan información importante sobre los directorios apropiados dentro de él. En nuestro caso, el sistema de archivos raíz está en /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

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

# mount /dev/vda1 /mnt/boot

En este punto debemos chroot 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 de dispositivos que usamos arriba cuando desbloqueamos el contenedor LUKS manualmente; se utilizará 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 referenciamos 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 ya que no usamos uno (siga nuestro tutorial sobre cómo usar un archivo como clave de dispositivo LUKS si quiere saber cómo lograr este tipo de configuración).

El último elemento de la línea alberga las opciones que deben usarse para el dispositivo encriptado:aquí solo usamos luks para especificar que el dispositivo es un contenedor LUKS.

Una vez que actualizamos /etc/crypttab archivo, podemos continuar y regenerar el initramfs . En Debian y distribuciones basadas en Debian, para realizar esta acción usamos update-initramfs comando:

# update-initramfs -k all -c

Aquí usamos el -c opción para indicar al comando que cree un nuevo initramfs en lugar de actualizar uno existente, y -k para especificar para qué kernel se debe crear initramfs. En este caso pasamos all como argumento, por lo que se generará uno para cada núcleo existente.

Una vez que se genera initramfs, volvemos al instalador (Ctrl+Alt+F5 ) y continúa con el último paso:Finalizar la instalación . Cuando finalice la instalación se nos pedirá que reiniciemos para acceder al sistema recién instalado. Si todo salió como se esperaba, durante el arranque del sistema, se nos debería solicitar que ingresemos la frase de contraseña para desbloquear el contenedor LUKS:

Conclusiones

En este tutorial, aprendimos cómo solucionar una limitación del instalador de Debian que no es capaz de reconocer y abrir un contenedor 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 abierto el contenedor, el instalador lo reconoce correctamente y se puede utilizar sin problemas. La única parte complicada de esta configuración es que debemos recordar crear una entrada para el contenedor en el sistema recién instalado crypttab y actualice su archivo initramfs.


Debian
  1. Cómo instalar Debian 10 (Buster)

  2. Cómo instalar VeraCrypt en Debian 10 Buster

  3. Cómo instalar Python 3.9 en Debian 10

  4. Cómo instalar TeamViewer en Debian 10

  5. Cómo instalar Docker en Debian 9 (Stretch)

Cómo instalar PHP en Debian 9

Cómo instalar R en Debian 10

Cómo instalar Debian 11

Cómo instalar Docker en Debian 11

Cómo instalar Go en Debian 10

Cómo instalar Go en Debian

    Requisitos de software y convenciones de la 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 de root, ya sea directamente como usuario root o mediante el uso de sudo comando
    $:requiere que los comandos de Linux dados se ejecuten como un usuario normal sin privilegios