我正在为自己的项目制作一个 Ubuntu 实时启动 USB,其中包含许多私有代码,因此我需要加密我的持久分区。就像 Kali Linux 中的一样,LUKS 和持久性可防止任何信息被盗。但是,目前我在 Google 和论坛上都没有找到答案。
问答:
为什么不直接在 USB 上安装 Ubuntu?这个 USB 将在很多地方使用,例如学校计算机,如果我直接安装,兼容性可能会很差,而且直接安装会占用太多空间。
为什么需要加密?不仅仅是私人代码,照片等私人内容也可以存储在那里。
你为什么不使用 Kali?我也是它的用户,但我想将这些黑客文件和黑客配置与我自己的代码分开。
如果我能在这里得到一些帮助,我会很高兴。如果存在加密持久性,Ubuntu 真的很棒。
PS 已经有一个线程打开Ubuntu 论坛但希望在这里得到一些帮助。我尝试检查 kali 的源代码,但并非所有部分都是开源的!!!
答案1
在我看来,阻力最小的路径是使用启用了持久性的常规实时 USB 闪存驱动器,创建一个 LUKS 容器并在需要时挂载它……
要创建一个 LUKS 容器(此处名为 Vault.dat),打开它并格式化它ext4
:
dd if=/dev/urandom of=Vault.dat bs=1M count=1024
cryptsetup luksFormat Vault.dat
sudo cryptsetup luksOpen Vault.dat Vault
sudo mkfs -L VAULT /dev/mapper/Vault
sudo cryptsetup luksClose Vault
要打开加密容器,使用它,然后关闭它:
sudo cryptsetup luksOpen Vault.dat Vault
sudo mount /dev/mapper/Vault /mnt
# ... the encrypted container is mounted on /mnt ...
# ... you can write, edit and read files from /mnt ...
# ... you may want to chown $USER /mnt ...
# ... close the container when you are done ...
sudo umount /mnt
sudo luksClose Vault
DigitalOcean 提供了一个很好的教程,https://www.digitalocean.com/community/tutorials/how-to-use-dm-crypt-to-create-an-encrypted-volume-on-an-ubuntu-vps。
ubuntu-16.04.1-desktop-amd64.iso
已使用 Universal USB Installer 1.9.6.8 写入 USB 闪存驱动器进行测试。
答案2
多年来,我一直在修补 ubuntu livecds 以添加加密持久性。不幸的是,Ubuntu 不接受我的补丁... 我的解决方案只是为文件持久性添加了加密,而不是分区持久性(这可以通过 GPT 和特殊命名的分区来实现,MBR 可能更难)。我有一篇博客文章这里,应该适用于大多数版本的 ubuntu,以及论坛评论附有额外信息。
基本上,您需要修补 isos initrd 以添加加密,然后重新打包 iso。接下来,在 FAT32 文件系统上的 USB 上创建 luks 加密持久文件(如果您需要超过 2G 的空间,您可能能够使用 EXT)。然后,我使用 grub2 使 USB 可启动,并将 grub2 配置为回送挂载 iso 并通过 loopback.cfg grub 配置文件启动。