Ho creato un contenitore crittografato tramite
#!/bin/bash
dd if=/dev/zero of=$1 bs=1 count=0 seek=$2
MAPPER=$(mktemp -up /dev/mapper)
LOOPDEV=$(losetup --find --show $1)
cryptsetup luksFormat $LOOPDEV
cryptsetup luksOpen $LOOPDEV $(basename $MAPPER)
mkfs.ext3 $MAPPER
cryptsetup luksClose $MAPPER
losetup -d $LOOPDEV
ovvero un file, ad esempio container
specificato in questo script, conterrà un file system ext3 crittografato tramite cryptsetup luksFormat
.
Per montarlo, attualmente uso un altro script, ad esempio dm.mount container /mnt/decrypted
:
#!/bin/bash
set -e
MAPPER=$(mktemp -up /dev/mapper)
LOOPDEV=$(losetup --find --show $1)
cryptsetup luksOpen $LOOPDEV $(basename $MAPPER) || losetup -d $LOOPDEV
mount $MAPPER $2 || (
cryptsetup luksClose $MAPPER
losetup -d $LOOPDEV
)
e per smontarlo dm.umount /mnt/decrypted
:
#!/bin/bash
set -e
MAPPER=$(basename $(mount | grep $1 | gawk ' { print $1 } '))
LOOPDEV=$(cryptsetup status $MAPPER | grep device | gawk ' { print $2 } ')
umount $1
cryptsetup luksClose $MAPPER
losetup -d $LOOPDEV
C'è molta ridondanza e afferrare manualmente un dispositivo loop e un mapper entrambi i quali potrebbero rimanere anonimi. C'è un modo per fare semplicemente qualcosa come mount -o luks ~/container /mnt/decrypted
(richiedere la passphrase) e umount /mnt/decrypted
il modo semplice invece?
modifica Fondamentalmente sono contento dei miei script sopra (anche se il controllo degli errori potrebbe essere migliorato ...), quindi
Come può un'opzione mount
-o luks=~/container
essere implementata in modo simile-o loop ~/loopfile
all'utilizzo degli script che ho scritto?
Questo può essere ottenuto senza riscrivere mount
? O in alternativa, potrebbe -t luks -o loop ~/container
essere implementato?
mount