Encryption

Cryptsetup 失去密碼但打開設備

  • November 26, 2017

首先,我知道這是一個非常糟糕的情況,應該始終備份密鑰,但問題不是由我引起的。我只是尋求幫助。

該驅動器使用帶有 luks 的 cryptsetup 進行加密。對應密碼失去但設備已打開(已安裝)。我嘗試使用 luksAddKey 添加新密鑰,但首先我必須輸入現有密碼。

有沒有辦法獲得這個設備的新密碼,還是我必須將所有數據複製到額外的驅動器並創建一個新的加密設備?

系統資訊如下:

$ lsb_release -a                                                               
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.3 LTS
Release:    16.04
Codename:   xenial

$ cryptsetup --version                                                         
cryptsetup 1.6.6

$ cryptsetup luksDump /dev/md2                                                 
LUKS header information for /dev/md2

Version:        1
Cipher name:    aes
Cipher mode:    xts-plain64
Hash spec:      sha512
Payload offset: 4096
MK bits:        512
MK digest:      37 ee 53 b6 13 86 93 2a 13 36 41 85 ab 26 e0 7f 7f 3e 03 be 
MK salt:        ed 4e 59 fc 3e b3 42 f2 32 97 c5 95 83 eb 90 6c 
               eb 40 02 25 85 db 5c d1 68 85 3a 54 a0 9d c9 f1 
MK iterations:  62875
UUID:           a9b56d9a-fb50-4b8a-ad63-af1851c89f42

Key Slot 0: ENABLED
   Iterations:             267782
   Salt:                   25 66 7e 35 aa 55 b2 05 c3 fc 66 89 e4 2c 5c b6 
                           e3 18 25 8e 66 d8 03 c5 24 d7 a1 09 15 dc ec 78 
   Key material offset:    8
   AF stripes:             4000
Key Slot 1: DISABLED
Key Slot 2: DISABLED
Key Slot 3: DISABLED
Key Slot 4: DISABLED
Key Slot 5: DISABLED
Key Slot 6: DISABLED
Key Slot 7: DISABLED

您可以在以下位置找到一個好的解決方案:http ://www.thegeekstuff.com/2016/03/cryptsetup-lukskey/

這是簡短的版本:

dmsetup table  --showkeys|grep luks

確保您只有一台加密設備。

cryptsetup luksAddKey /dev/sdXX --master-key-file <(dmsetup table  --showkeys|grep luks|cut -d\  -f 6|xxd -r -p)

請將 /dev/sdXX 更改為 luks 位於頂部的塊設備。

引用自:https://serverfault.com/questions/885249