Reimpostazione della password LUKS dalla CLI con la chiave di ripristino

2

Ho un dd di un computer che ha una partizione crittografata con LUKS. Non ho la password ma ho una chiave di ripristino che mi permetterebbe di cambiare la password attraverso un'interfaccia GUI all'avvio del computer. Sfortunatamente, non ho più accesso diretto al computer di origine per reimpostare la password.

Quello che desidero fare è resettare la password usando la chiave di ripristino in modo da poter accedere ai dati. Posso ovviamente scaricare la copia di dd su un HDD e avviare il sistema, ma esiste un modo per reimpostare la password LUKS con la chiave di ripristino attraverso una CLI? Sto pensando che lo scenario ideale sia montare il DD e poi resettare la password.

Grazie

    
posta thefragileomen 22.05.2017 - 12:03
fonte

1 risposta

1

Per la partizione crittografata con LUKS, sarà necessario ottenere l'offset per la partizione e la dimensione del settore logico del dispositivo. Per questo è utile usare sfdisk insieme a un'espressione regolare. Supponendo che il numero della partizione con LUKS sia la partizione 2 e il file immagine sia backup.img :

# set the partition number for LUKS and the image file
partdev=./backup.img
partnum=2

# get offset of partition, sector size, and the next free loop device
partoff=$(sfdisk -d $partdev | grep -oP "$partnum : start= .*\K[0-9]*"
secsize=$(stat -c %B $partdev)
loopdev=$(losetup -f)

# using these values, create a loop device, decrypt, and mount LUKS
losetup $loopdev -o $((partoff * secsize)) $partdev
cryptsetup luksOpen $loopdev backup_crypt
mount /dev/mapper/backup_crypt /mnt

Ora il file system decrittografato è disponibile a /mnt . Fai quello che vuoi con esso. Al termine, è necessario smontare, chiudere il dispositivo LUKS e rimuovere il dispositivo loop:

umount /mnt
cryptsetup luksClose backup_crypt
losetup -d $loopdev
    
risposta data 01.12.2017 - 05:36
fonte

Leggi altre domande sui tag