如何更改全盘加密的密码?

Hap*_*per 14 linux disk-encryption ubuntu

我安装了带有全盘加密的 Ubuntu 12,现在我想更改密码短语。

如何才能做到这一点?

Law*_*ceC 19

Ubuntu 使用 LUKS 来加密分区和 LVM。

LUKS 支持每个分区八个键槽。的cryptsetup luksAddKeycryptsetup luksRemoveKey可用于从槽添加和删除键。 cryptsetup luksDump可以告诉您哪些插槽中有键。

基本上正确的方法是您想在新插槽中添加一个密钥,测试您是否可以成功使用新密钥,然后当您准备好时,删除旧密钥。

在启动过程中,当您被要求提供密钥时,它应该告诉它正在尝试解锁哪个块设备。这就是您需要将cryptsetup命令应用到的分区。

所以使用cryptsetup添加密钥,重新启动,然后尝试新密钥。一旦您确认有效,您就可以删除旧密钥。

在尝试此操作或接受其他人的建议之前,我会备份您的数据,或者至少等待几个赞成票。我已经有一段时间没有更改 LUKS 分区上的密钥了。(编辑:或使用带有 GUI 的 Linux 系统...)

  • 我想补充一点,创建整个磁盘的映像并不只是为了修改密码。只需使用“cryptsetup luksHeaderBackup /dev/sda1 --header-backup-file /media/externalthing/somefile”之类的东西来备份文件。将“luksHeaderBackup”替换为“luksHeaderRestore”以再次恢复旧密钥。请注意,标头备份应保存到安全位置(最好是 USB 记忆棒上的另一个 LUKS 分区)。 (2认同)

Den*_*nis 18

这是最简单的方法:

  1. Super

  2. 键入Disk Utility并启动同名程序。

  3. 选择加密分区。

  4. 单击Change passphrase


hta*_*ess 8

添加一个给出实际工作示例的答案。

首先弄清楚设备名称是什么:

$ sudo blkid
Run Code Online (Sandbox Code Playgroud)

例如,在 Ubuntu 计算机上,可以使用以下命令找到全盘加密设备:

$ sudo blkid | awk -F':' '/crypto_LUKS/{ print $1 }'
/dev/nvme0n1p3
Run Code Online (Sandbox Code Playgroud)

现在检查您现有的插槽:

$ sudo cryptsetup luksDump /dev/nvme0n1p3 | grep luks2
  0: luks2
Run Code Online (Sandbox Code Playgroud)

现在添加一个新密钥:

$ sudo cryptsetup luksAddKey /dev/nvme0n1p3
Enter any existing passphrase: 
Enter new passphrase for key slot: 
Verify passphrase:
Run Code Online (Sandbox Code Playgroud)

您现在已经使用了第二个插槽:

$ sudo cryptsetup luksDump /dev/nvme0n1p3 | grep luks2
  0: luks2
  1: luks2
Run Code Online (Sandbox Code Playgroud)

为了安全起见,您应该通过重新启动来确保新密码有效,然后删除旧密码:

$ sudo cryptsetup luksRemoveKey /dev/nvme0n1p3
Enter passphrase to be deleted:
Run Code Online (Sandbox Code Playgroud)

您现在使用单个插槽:

$ sudo cryptsetup luksDump /dev/nvme0n1p3 | grep luks2
  0: luks2
Run Code Online (Sandbox Code Playgroud)


小智 7

这是该怎么做

  • 前往 Dash 主页
  • 搜索磁盘并单击它
  • 在左侧选择您的硬盘

现在向右看。可能有几个分区。

  • 选择其中之一。
  • 寻找两个齿轮的小标志
  • 点击齿轮

如果分区正确,则更改密码的选项将可用。
如果它不存在,请选择另一个分区。最有可能的,正确的分区将是分区 5