How To mount encrypted volume using with lukspass

index | about | archive | charlas | docs | links

dot | git | img | plt | tty | uml

how-to-mount-encrypted-volume-using-lukspass.png

tanto para recordar y tanto para perder!

Supongamos que tengo un volumen cifrado con LUKS y lo quiero montar, pero no recuerdo su identificador unívoco, por ej:

nvme-SAMSUNG_MZVLB512HBJQ-000L7_S4ENNF0N742476-part3

y además no recuerdo su passphrase, por ej:

p1KZFi5dGqyEBp2Uhyflzz6CvhiVLYkP5umw42htHe7piR1KVf0U2rMGTwCkZ3m8XDGrcE9qBi6XzTdYbXM922LynwlJj9KJ9UFCjZYLMAYVKp5NQhvlPdHVdJydelQm

estaría en graves problemas! no tendría acceso a mis preciados datos!

pass para no olvidar

pass es un script que integra gnupg 1 con git y tree y se ocupa de facilitar la generación y el almacenado de secretos de todo tipo.

Tengo un volumen con Debian 10, entonces en pass lo guardo como debian10 que es un nombre corto y fácil de recordar, pero en lugar de guardarlo como un archivo, lo hago como un enlace simbólico al identificador unívoco del volumen, en este caso nvme-SAMSUNG_MZVLB512HBJQ-000L7_S4ENNF0N742476-part3, que es mas difícil de recordar.


# pass find debian10
Search Terms: debian10
└── luks
    └── tequila
        └── debian10 -> nvme-SAMSUNG_MZVLB512HBJQ-000L7_S4ENNF0N742476-part3

# cd .password-store/luks/tequila/

# ls -lah debian10*
lrwxrwxrwx 1 root root 56 ago 25  2021 debian10.gpg -> nvme-SAMSUNG_MZVLB512HBJQ-000L7_S4ENNF0N742476-part3.gpg

la magia esta en lukspass

Hace un par de años que uso pass 2 y hoy publiqué el script lukspass 3 que vengo usando hace tiempo y esta en condiciones de liberar hace rato!

lukspass no hace otra cosa que buscar un nombre, en este caso debian10, obtener el identificador unívoco del volumen, obtener la passphrase 4, descifrar el volumen usando cryptsetup luksOpen y montar el volumen (por defecto en /mnt), en este caso en /mnt/debian10.

Son 2 pasos, indicar el nombre del volumen y tipear la passphrase de la GPG:


# lukspass debian10

┌─────────────────────────────────────────────────────────────────────────┐
│ Introduzca frase contraseña para desbloquear la clave secreta OpenPGP:  │
│ "Osiris Alejandro Gomez <root@osiux.com>"                               │
│ clave de 8192-bit RSA, ID FAFAFA23CAFEACDC,                             │
│ creada el 2020-01-01 (ID de clave primaria CDCAEFAC32AFAFAF).           │
│                                                                         │
│                                                                         │
│ Frase contraseña errónea (intento 2 de 3)                               │
│                                                                         │
│ Frase contraseña: ***************************************************** │
│                                                                         │
│          <OK>                                          <Cancelar>       │
└─────────────────────────────────────────────────────────────────────────┘

lukspass name=debian10 gpg=/root/.password-store/luks/tequila/debian10.gpg device=nvme-SAMSUNG_MZVLB512HBJQ-000L7_S4ENNF0N742476-part3

Si quisiera verificar, puedo ejecutar mount y ver que esta realmente montado:


# mount | grep debian10
/dev/mapper/debian10 on /mnt/debian10 type ext4 (rw,relatime)

# df -h | grep debian10
/dev/mapper/debian10           46G    11G   33G  26% /mnt/debian10

Una de las grandes ventajas es que me permite montar volumenes remotamente accediendo por ssh y estos volúmenes pueden ser de disctos externos por USB u otro tipo de conexión.

Por otro lado por tratarse de un repositorio git, queda versionado y puedo contar con esos secretos en varios hosts y siempre con la seguridad que ofrece gnupg.

te puede interesar

ChangeLog

  • 2023-03-02 00:54 agregar imagen y tags opengraph de How To mount encrypted volume using with lukspass
  • 2023-03-01 23:25 agregar How To mount encrypted volume using with lukspass

Notas al pie de página: