zeu*_*gor 26 encryption partitioning fstab mount luks
我在 SSD 设备上安装了 Xubuntu 14.04(在安装过程中对HOME进行了正确加密),此外,我还有一个带有加密分区的硬盘驱动器,其中包含我想安装在/mnt/hdd 中的额外数据。为了制作这些,我遵循了以下步骤:
(之前我在这篇文章http://www.marclewis.com/2011/04/02/luks-encrypted-disks-under-ubuntu-1010/ 之后用 LUKS 加密了磁盘)
检查 UUID
sudo blkid
/dev/sda1: UUID="b3024cc1-93d1-439f-80ce-1b1ceeafda1e" TYPE="crypto_LUKS"
Run Code Online (Sandbox Code Playgroud)
做一个密钥文件,我用正确的密码并保存HOME(这也被加密)。
sudo dd if=/dev/urandom of=/home/[USERNAME]/.keyfiles/key_luks bs=1024 count=4
sudo chmod 0400 .keyfiles/key_luks
Run Code Online (Sandbox Code Playgroud)
添加密钥
sudo cryptsetup luksAddKey /dev/sda1 /home/zeugor/.keyfiles/key_luks
Run Code Online (Sandbox Code Playgroud)
/etc/crypttab 中的新条目
hddencrypted UUID=b3024cc1-93d1-439f-80ce-1b1ceeafda1e /home/[USERNAME]/.keyfiles/key_luks luks
Run Code Online (Sandbox Code Playgroud)
更新初始 ramdisk
sudo update-initramfs -u -k all
Run Code Online (Sandbox Code Playgroud)
然后,为了测试它,我使用以下命令启动 cryptdisks:
sudo cryptdisks_start hddencrypted
* Starting crypto disk...
* hddencrypted (starting)..
* hddencrypted (started)...
Run Code Online (Sandbox Code Playgroud)
要检查hddencrypted 是否已映射:
ls /dev/mapper/
control hddencrypted
Run Code Online (Sandbox Code Playgroud)
创建挂载点
mkdir /mnt/hdd
Run Code Online (Sandbox Code Playgroud)
/etc/fstab 中的新条目
/dev/mapper/hddencrypted /mnt/hdd ext4 defaults 0 2
Run Code Online (Sandbox Code Playgroud)
无需重启验证 fstab:
sudo mount -a
Run Code Online (Sandbox Code Playgroud)
在启动时挂载加密分区
现在我已经按照我的建议将它安装在/mnt/hdd 中。但我想在重启后自动进行。但是在我登录之前,我收到了这个错误:
the disk drive for /mnt/hdd is not ready yet or not permit
Run Code Online (Sandbox Code Playgroud)
这一切让我觉得,在/ etc / crypttab中不能访问到位于在我的密钥文件HOME(其它加密分区)。我不知道系统遵循未加密和安装单元的顺序。我的HOME应该在我的 HDD 之前未加密,以便访问读取密钥文件。
我将不胜感激任何有关为什么会发生这种情况的见解。
更新: 如果我在/boot(未加密)中找到密钥文件,而不是在我的/home/[USERNAME](加密)中,则/dev/sda1和更新/etc/crypttab 中的条目在启动时完美安装。
小智 10
/boot 目录中的密钥文件可以被您的机器上启动的任何其他操作系统读取,这些操作系统能够在 /boot 所在的位置挂载文件系统。因此,加密并不是真正有效的。此参数适用于未加密文件系统上的所有密钥文件位置。
为了避免未加密文件系统上的密钥文件,可以使用密码进行解密。为设备创建一个强密码。然后,将 /etc/crypttab 中的行更改为
hddencrypted UUID=b3024cc1-93d1-439f-80ce-1b1ceeafda1e none luks
Run Code Online (Sandbox Code Playgroud)
并保持 /etc/fstab 中的条目未修改。Ubuntu 14.04/16.04/18.04 在启动时要求您输入密码。
小智 6
如果将 fstab 中的“默认值”替换为
rw,suid,dev,exec,auto,user,async,relatime
Run Code Online (Sandbox Code Playgroud)
(根据mount手册页,除了“user”之外,它与“defaults”相同。)
| 归档时间: |
|
| 查看次数: |
62532 次 |
| 最近记录: |