Proxmox ZFS Cifrado

Crear pool cifrado de ZFS para proteger CTs en proxmox.

 ZFS for Newbies

El mejor video introductorio para entender con que se come ZFS: https://www.youtube.com/watch?v=3oG-1U5AI9A

Proxmox no ofrece una opción de fabrica para crear contenedores (CTs) cifrados y para evitar crear una VM de los servicios que queramos mantener seguros de un acceso directo a sus datos en caso de que proxmox sea vulnerado (por ej: físicamente robado), podemos crear un “dataset” en nuestra partición ZFS que sea cifrada y mantenerlo como una unidad separada que requerirá una passphrase para ser montado.

Primero tenemos que identificar el pool ya creado y montado desde proxmox (recomiendo siempre administrar esto desde la UI para que sea mas sencilla y clara su administración)

zpool list

root@host04:~# zpool list
NAME       SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
data-ssd   888G  11.9G   876G        -         -     4%     1%  1.00x    ONLINE  -

En mi caso es data-ssd

Luego creamos el “dataset” encriptado:

ZFS create -o encryption=on -o keyformat=passphrase data-ssd/encrypted

Nos va a solicitar que pongamos una passphrase que tenemos que guardar ya que sera la que utilizaremos para montar y “des-encriptar” la unidad.

Por ultimo lo agregamos al proxmox para que sea utilizable:

pvesm add ZFSpool data-ssd_encrypted -pool data-ssd/encrypted

En caso de un reinicio del equipo vamos a tener que acceder por SSH y montarlo manualmente, por lo que tenemos que pensar bien que CTs vamos a dejar en esta unidad ya que no iniciaran por si solas.

Para volver a montar la unidad después de un reinicio:

ZFS mount -l data--sd/encrypted