Centos
Cryptsetup luks - 檢查核心是否支持 aes-xts-plain64 密碼
我在 CentOS 5 上使用 cryptsetup luks 加密加密了一堆硬碟。一切都很好,直到我將系統升級到 CentOS 6。現在我無法再安裝磁碟了。
使用我的關鍵詞安裝:
sudo cryptsetup luksOpen /dev/sdc1 d2
我收到此錯誤:
device-mapper: reload ioctl on failed: Invalid argument Failed to setup dm-crypt key mapping for device /dev/sdc1. Check that kernel supports aes-xts-plain64 cipher (check syslog for more info). Failed to read from key storage.
在 /var/log/messages 中:
Feb 3 23:43:23 data kernel: device-mapper: table: 253:0: crypt: Device lookup failed Feb 3 23:43:23 data kernel: device-mapper: ioctl: error adding target to table
關於如何安裝的任何想法?
找到解決方案。
問題是驅動器是用大約 512 個字元長的互動式關鍵字加密的(從密鑰文件複製/粘貼)。由於某種原因,CentOS 6 中的新核心模組在舊版本創建時無法正確讀取 512 個字元的加密密鑰。似乎只影響不同版本的核心或 cryptsetup,因為在同一系統上創建和打開 512 個字元的密鑰時將起作用。
總之…
核心 -> 創建 512 個字元的 luks 密鑰 -> 可以在同一個核心中打開
舊核心 -> 創建 512 個字元的 luks 密鑰 -> 無法在新核心中打開
512 個字元太長了。不確定門檻值是多少,但我決定將密鑰更改為 50 個字元,並且成功了。
為了解決這個問題,我重新安裝了我之前使用的舊 CentOS 5 作業系統,使用 cryptsetup luksAddKey,輸入原始(長)512 個字元的密鑰,並創建了一個 50 個字元長的新密鑰。
然後我重新安裝了 CentOS 6,並使用 cryptsetup luksOpen 使用 50 個字元的密鑰(不是原始密鑰)成功安裝了每個磁碟。
因此,請注意遇到類似錯誤的人。如果您使用超長密鑰加密驅動器,更改為新核心或 cryptsetup,並且在嘗試 luksOpen 加密卷時出現核心模組錯誤,您可能必須返回舊核心版本才能使用 luksAddKey 和在新核心中使用之前添加較短的密鑰。這可能是一個錯誤,或者是 LUKS 使用的核心模型中允許的最大互動鍵不匹配。