我正在以编程方式调用 cryptsetup,并希望在命令行(非交互式)按需传递 key 文件。
我如何使用带有 luks 的 cryptsetup 在命令行接收 key 文件?
最佳答案
您需要创建一个 key 文件:
dd if=/dev/random bs=32 count=1 of=/root/random_data_keyfile1
printf "YOUR PASSPHRASE" >/root/plaintext_passphrase_keyfile2
将文件设置为只读给 root:
sudo chmod 0400 /root/random_data_keyfile1
将 key 添加到 LUKS:
cryptsetup luksAddKey /dev/sdX /root/random_data_keyfile1
您必须在“/etc/crypttab”中添加一个条目:
echo "luks-$(cryptsetup luksUUID /dev/sdX) UUID=$(cryptsetup luksUUID /dev/sdX) /root/random_data_keyfile1" >>/etc/crypttab
重新启动以确保设备自动解锁。确保您拥有正确的设备 ID。
关于crypt - 如何让 cryptsetup 在安装期间自动使用 key 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40026555/