Btrfs

Cómo cifrar un sistema de archivos Btrfs?

Cómo cifrar un sistema de archivos Btrfs?

La función de cifrado a nivel del sistema de archivos Btrfs aún no está disponible. Pero puede utilizar una herramienta de cifrado de terceros como cripta-dm para cifrar todos los dispositivos de almacenamiento de su sistema de archivos Btrfs.

En este artículo, le mostraré cómo cifrar los dispositivos de almacenamiento agregados a un sistema de archivos Btrfs con dm-crypt. Entonces empecemos.

Abreviaturas

Prerrequisitos

Para seguir este artículo:

Como puede ver, tengo un disco duro sdb en mi Ubuntu 20.04 máquina LTS. Lo cifraré y lo formatearé con el sistema de archivos Btrfs.

$ sudo lsblk -e7

Instalación de paquetes necesarios en Ubuntu 20.04 LTS

Para cifrar dispositivos de almacenamiento y formatearlos con el sistema de archivos Btrfs, debe tener el btrfs-progs y cripta paquetes instalados en su Ubuntu 20.04 máquina LTS. Afortunadamente, estos paquetes están disponibles en el repositorio oficial de paquetes de Ubuntu 20.04 LTS.

Primero, actualice la caché del repositorio de paquetes APT con el siguiente comando:

actualización de $ sudo apt


Instalar btrfs-progs y cripta, ejecute el siguiente comando:

$ sudo apt install btrfs-progs cryptsetup --instalar-sugiere


Para confirmar la instalación, presione Y y luego presione <Ingresar>.


La btrfs-progs y cripta Se están instalando paquetes y sus dependencias.


La btrfs-progs y cripta los paquetes deben instalarse en este punto.

Instalación de paquetes requeridos en Fedora 33

Para cifrar dispositivos de almacenamiento y formatearlos con el sistema de archivos Btrfs, debe tener el btrfs-progs y cripta paquetes instalados en su máquina Fedora 33 Workstation. Afortunadamente, estos paquetes están disponibles en el repositorio oficial de paquetes de Fedora 33 Workstation.

Primero, actualice la caché del repositorio de paquetes DNF con el siguiente comando:

$ sudo dnf makecache


Instalar btrfs-progs y cripta, ejecute el siguiente comando:

$ sudo dnf instalar btrfs-progs cryptsetup -y


La estación de trabajo Fedora 33 usa el sistema de archivos Btrfs por defecto. Por lo tanto, es más probable que ya tenga estos paquetes instalados, como puede ver en la captura de pantalla a continuación. Si por alguna razón no se instalan, se instalarán.

Generación de una clave de cifrado

Antes de poder cifrar sus dispositivos de almacenamiento con cripta, necesita generar una clave aleatoria de 64 bytes de longitud.

Puede generar su clave de cifrado y almacenarla en el / etc / cryptkey archivo con el siguiente comando:

$ sudo dd if = / dev / urandom of = / etc / cryptkey bs = 64 count = 1


Se debe generar y almacenar una nueva clave de cifrado en el / etc / cryptkey expediente.


El archivo de clave de cifrado / etc / cryptkey todos pueden leerlo de forma predeterminada, como puede ver en la captura de pantalla a continuación. Este es un riesgo de seguridad. Queremos solo el raíz usuario para poder leer / escribir en el archivo / etc / cryptkey.

$ ls -lh / etc / cryptkey


Para permitir que solo el usuario root lea / escriba en el archivo / etc / cryptkey, cambie los permisos del archivo de la siguiente manera:

$ sudo chmod -v 600 / etc / cryptkey


Como puede ver, solo el raíz el usuario tiene permiso de lectura / escritura (rw) para el / etc / cryptkey expediente. Entonces, nadie más puede ver lo que hay en el / etc / cryptkey expediente.

$ ls -lh / etc / cryptkey

Cifrar los dispositivos de almacenamiento con dm-crypt

Ahora que ha generado una clave de cifrado, puede cifrar su dispositivo de almacenamiento. digamos,  sdb, con la tecnología de cifrado de disco LUKS v2 (versión 2) de la siguiente manera:

$ sudo cryptsetup -v --type luks2 luksFormat / dev / sdb / etc / cryptkey

cripta le pedirá que confirme la operación de cifrado.

NOTA: Deben eliminarse todos los datos de su HDD / SSD. Por lo tanto, asegúrese de mover todos sus datos importantes antes de intentar cifrar su HDD / SSD.


Para confirmar la operación de cifrado del disco, escriba (en mayúsculas) y presione . Puede que tarde un poco en completarse.


En este punto, el dispositivo de almacenamiento / dev / sdb debe estar encriptado con la clave de encriptación / etc / cryptkey.

Apertura de dispositivos de almacenamiento cifrados

Una vez que haya cifrado un dispositivo de almacenamiento con cripta, necesitas abrirlo con el cripta herramienta para poder usarlo.

Puede abrir el dispositivo de almacenamiento cifrado sdb y mapearlo a su computadora como un datos dispositivo de almacenamiento de la siguiente manera:

$ sudo cryptsetup open --key-file = / etc / cryptkey --type luks2 / dev / sdb data


Ahora, el dispositivo de almacenamiento descifrado estará disponible en la ruta / dev / mapper / data. Tienes que crear tu sistema de archivos deseado en el / dev / mapper / dispositivo de datos y monta el / dev / mapper / dispositivo de datos en vez de / dev / sdb de ahora en adelante.

Creación de un sistema de archivos Btrfs en dispositivos cifrados:

Para crear un sistema de archivos Btrfs en el dispositivo de almacenamiento descifrado / dev / mapper / data con los datos de la etiqueta, ejecute el siguiente comando:

$ sudo mkfs.btrfs -L data / dev / mapper / data


Se debe crear un sistema de archivos Btrfs en el / dev / mapper / dispositivo de almacenamiento de datos, que se descifra del dispositivo de almacenamiento / dev / sdb (cifrado con LUKS 2).

Montaje del sistema de archivos Btrfs cifrado

También puede montar el sistema de archivos Btrfs que ha creado anteriormente.

Digamos que desea montar el sistema de archivos Btrfs que creó anteriormente en el /datos directorio.

Entonces, crea el /datos directorio de la siguiente manera:

$ sudo mkdir -v / data


Para montar el sistema de archivos Btrfs creado en el / dev / mapper / dispositivo de almacenamiento de datos en el /datos directorio, ejecute el siguiente comando:

$ sudo mount / dev / mapper / data / data


Como puede ver, el sistema de archivos Btrfs creado en el dispositivo de almacenamiento cifrado sdb está montado en el /datos directorio.

$ sudo btrfs sistema de archivos show / data

Montaje automático del sistema de archivos Btrfs cifrado en el momento del arranque

También puede montar el sistema de archivos Btrfs cifrado en el momento del arranque.

Para montar el sistema de archivos Btrfs cifrado en el momento del arranque, debe:

Primero, busque el UUID del sdb dispositivo de almacenamiento cifrado con el siguiente comando:

$ sudo blkid / dev / sdb


Como puede ver, el UUID del sdb el dispositivo de almacenamiento encriptado es 1c66b0de-b2a3-4d28-81c5-81950434f972. Será diferente para ti. Entonces, asegúrate de cambiarlo con el tuyo a partir de ahora.


Para descifrar automáticamente el sdb dispositivo de almacenamiento en el momento del arranque, debe agregar una entrada para él en el / etc / crypttab expediente.

Abre el / etc / crypttab archivo con el nano editor de texto de la siguiente manera:

$ sudo nano / etc / crypttab


Agregue la siguiente línea al final del / etc / crypttab archivo si está utilizando un disco duro.

UUID de datos = 1c66b0de-b2a3-4d28-81c5-81950434f972 / etc / cryptkey luks, noearly

Agregue la siguiente línea al final del / etc / crypttab archivo si está usando un SSD.

UUID de datos = 1c66b0de-b2a3-4d28-81c5-81950434f972 / etc / cryptkey luks, noearly, descartar

Una vez que haya terminado, presione <control> + X, seguido por Y, y <Ingresar> para salvar el / etc / crypttab expediente.


Ahora, busque el UUID del descifrado / dev / mapper / data dispositivo de almacenamiento con el siguiente comando:

$ sudo blkid / dev / mapper / data


Como puede ver, el UUID del / dev / mapper / data el dispositivo de almacenamiento descifrado es dafd9d61-bdc9-446a-8b0c-aa209bfab98d. Será diferente para ti. Entonces, asegúrate de cambiarlo con el tuyo a partir de ahora.


Para montar automáticamente el dispositivo de almacenamiento descifrado / dev / mapper / data en el directorio / data en el momento del arranque, debe agregar una entrada para él en el / etc / fstab expediente.

Abre el archivo / etc / fstab con el nano editor de texto de la siguiente manera:

$ sudo nano / etc / fstab


Ahora, agregue la siguiente línea al final del / etc / fstab expediente:

UUID = dafd9d61-bdc9-446a-8b0c-aa209bfab98d / data btrfs valores predeterminados 0 0

Una vez que haya terminado, presione <control> + X, seguido por Y, y <Ingresar> para salvar el / etc / fstab expediente.


Finalmente, reinicie su computadora para que los cambios surtan efecto.

$ sudo reiniciar


El dispositivo de almacenamiento encriptado sdb se descifra en un datos dispositivo de almacenamiento, y el datos El dispositivo de almacenamiento está montado en el /datos directorio.

$ sudo lsblk -e7


Como puede ver, el sistema de archivos Btrfs, que fue creado en el descifrado / dev / mapper / data El dispositivo de almacenamiento está montado en el /datos directorio.

$ sudo btrfs sistema de archivos show / data

Conclusión

En este artículo, le he mostrado cómo cifrar un dispositivo de almacenamiento utilizando la tecnología de cifrado LUKS 2 con cryptsetup. También aprenderá a descifrar el dispositivo de almacenamiento cifrado y a formatearlo con el sistema de archivos Btrfs. Además de cómo descifrar automáticamente el dispositivo de almacenamiento cifrado y montarlo en el momento del arranque. Este artículo debería ayudarlo a comenzar con el cifrado del sistema de archivos Btrfs.

Cómo instalar y jugar a Doom en Linux
Introducción a Doom La serie Doom se originó en los años 90 después del lanzamiento del Doom original. Fue un éxito instantáneo y, desde ese momento e...
Vulkan para usuarios de Linux
Con cada nueva generación de tarjetas gráficas, vemos que los desarrolladores de juegos superan los límites de la fidelidad gráfica y se acercan un pa...
OpenTTD frente a Simutrans
Crear su propia simulación de transporte puede ser divertido, relajante y extremadamente atractivo. Es por eso que debes asegurarte de probar tantos j...